欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 新车 > 计算机基础:二进制基础12,十进制数转换为十六进制

计算机基础:二进制基础12,十进制数转换为十六进制

2025/3/17 9:20:00 来源:https://blog.csdn.net/2401_82825368/article/details/146303038  浏览:    关键词:计算机基础:二进制基础12,十进制数转换为十六进制

专栏导航

本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。

(一)WIn32 专栏导航

上一篇:计算机基础:二进制基础11,十六进制的位基和位权

回到目录

下一篇:无

(二)MFC 专栏导航

上一篇:计算机基础:二进制基础11,十六进制的位基和位权

回到目录

下一篇:无

本节前言

上一节,。我们讲解了十六进制的位基与位权,也讲解了求解一个十六进制整数所对应的十进制数

本节,我们来讲解如何将一个十进制数转换为一个十六进制数。

本节内容,你可以参考本系列的前面的一篇文章,文章连接如下。

计算机基础:二进制基础04,十进整制数转化为二进制整数-CSDN博客

好了,我们开始本节的讲解。

一.    短除法

对于短除法,有的人可能接触过。有的人,可能没有接触过。假定,你没有接触过短除法。

我们先来看一看一般的除法。

一般的除法,使用的是下面的符号。

图1,普通除法符号

短除法,使用的是另外的符号。短除法的运算符号如下图所示。

图2,短除法符号

我们先来做一个简单的短除法,大家由此来体会短除法的使用方法。

图3

图3演示的,是19除以7的计算式。我们知道,19除以7,被除数是19,除数是7,商是2,余数是5。

在图中,我们看到,被除数位于短除法符号所包着的位置。除数位于左边,商位于横线下面,余数位于右边,且和短除法符号隔开一点距离。

短除法还可以连用。连用的方法,我们在下一分节来演示。

在这里,我们所看到的,是短除法的基本的使用方法。

二.     十进制转换为十六进制

在演示具体的运算过程之前,我还是将十六进制的 A 到 F 与十进制的对比表格列出来。

十六进制ABCDEF
十进制101112131415

然后呢,我们来看一个例题。

图4

图4里面,就是连续使用短除法的例子。首先呢,用被除数 61340 除以 16,结果呢,商为 3833,余数为 12,十进制的 12 对应着十六进制的 C 。商 3833 写在被除数 61340 的下面,余数 12 写在被除数 61340 的右边,十进制余数 12 所对应的十六进制 C 写在最右边。

接下来,上一步的商 3833 作为新的短除法的被除数,然后呢,除数依旧是 16。3833 除以 16,商为 239,余数为 9 。商 239 写在 被除数 3833 的下面,余数 9 写在被除数 3833 的右边 。

接下来,上一步的商 239 作为新的短除法的被除数,除数仍旧为 16 。239 除以 16,商是 14,余数是 15,十进制的 15 对应着十六进制的 F 。商 14 写在被除数 239 的下面,余数 15 写在被除数 239 的右边,十进制余数 15 所对应的十六进制数 F 写在最右边。

接下来,上一步的商 14 作为新的短除法的被除数,除数依旧为 16 。14 除以 16,商是 0,余数是 14,十进制的 14 对应着十六进制的 E 。商 0 写在被除数 14 的下面,余数 14 写在被除数 14 的右边,十进制余数 14 所对应着的十六进制数 E 写在最右边。

当商为0的时候,连续短除法结束。

当短除法结束的时候,我们将余数连起来。

首先呢,准备好一个新的记录数字的地方。

将最下面的余数写在新纪录位置的最左边。然后呢,将第二最下面的余数写在新纪录位置里,从左数的第二个数位上。然后呢,将第三下面的余数,写在新纪录位置从左数的第三个数位上。依次类推,直到我们将最上面的余数写在最右边为止。

注意,我们在连续短除法中,遇到过同一个余数的两种表达方式,十进制与十六进制。比如说,61340 除以 16,余数的十进制形式 为 12,余数的十六进制形式为 C 。连续短除法中,我们将这两种都给标记出来了。然而,在自下而上,连缀余数的时候,我们要连接的,是十六进制的形式。

因此,对于 61340 连续短除 16 的运算,余数连接的结果为 EF9C 。

我们将 EF9C 视为一个十六进制数,并加上前缀【0x】,则【0xEF9C】便是十进制数 61340 对应的十六进制数。

像这种地,使用连续短除法,将一个待转换的十进制整数,每次都除以 16,待到商为 0 的时候结束短除,从下往上,依次连缀余数,以求得对应的十六进制数的方法,叫做除 16 取余法。

注意,除 16 取余法的停止短除的条件是:商为 0

通过使用除 16 取余法,可以将任意的一个十进制数,转换为十六进制数。

三.    除 k 取余法

我们在学习二进制的时候,我们学习了,用除 2 取余法,将十进制数转换为二进制数。

我们在学习八进制的时候,我们学习了,用除 8 取余法,将十进制数转换为八进制数。

在本节,我们学习了,用除 16 取余法,将十进制数转换为十六进制数。

其实,我们也可以将类似的方法推广开来。比如说,用除 9 取余法,可以将十进制数转换为九进制数。用除 6 取余法,可以将一个十进制数转换为六进制数。

除2取余法,除8取余法,除16取余法等等的方法,均是将一个十进制转换为某一进制数的方法。我们将这类方法,统称为除 k 取余法。

k 等于多少,则连续短除法中,连续除以的数,便是多少,最终转换的进制,也会是这个除数。

除 2 取余法,得到的是二进制数。

除 3 取余法,得到的是三进制数。

除 8 取余法,得到的是八进制数。

除 k 取余法,得到的是 k 进制数。

四.    一个例题

之前,在讲解二进制和八进制的时候,我都是设置了两个例题的。这次,我偷个懒,只设置一个例题。

例题1    将十进制数 39617 转为十六进制数

图5

由图5可知,十进制数 39617 对应的十六进制数是 9AC1。

将结果加上十六进制前缀【0x】,则最终的结果为 0x9AC1 。

例题2     将十进制数 29637 转换为十六进制数

图6

由图5可知,十进制数 29637 对应的十六进制数是 73C5。

将结果加上十六进制前缀【0x】,则最终的结果为 0x73C5 。

结束语

到了这里,本节就结束了。同时,对于十六进制数的讲解乃至对于整个的二进制,八进制和十六进制的讲解,已接近尾声。

希望大家能够学好进制的基础知识。

下一节,我们将结束进制的学习。

专栏导航

本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。

(一)WIn32 专栏导航

上一篇:计算机基础:二进制基础11,十六进制的位基和位权

回到目录

下一篇:无

(二)MFC 专栏导航

上一篇:计算机基础:二进制基础11,十六进制的位基和位权

回到目录

下一篇:无

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词