十进制数转化为二进制数的快速解法-2019年文档

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

十进制数转化为二进制数的快速解法

许多计算机专业的初学者都会接触到一个问题,即几种常见数制之间的相互转换问题,其中尤以十进制数与二进制数之间的转换最为重要,前者是人们日常学习、生产和生活中最熟悉最常用的数制,而后者则是计算机存储、计算、传输等所依赖的数制。以下重点介绍一种快速准确的将十进制整数转化为二进制整数

的方法。

首先,我们有必要提到几个概念:

进位计数制:是人们利用符号来计数的方法。一种进位计数制包含一组数码符号和两个基本因素,即:

(1)数码:用不同的数字符号来表示一种数制的数值,这些数字符号称为“数码”。

(2)基:数制所使用的数码个数称为“基”。如:十进制数的“基”为10,即0、1、……8、9;二进制数的“基”为2,即0、1。

(3)权:某数制每一位所具有的值称为“权”。位权是一个乘方值,乘方的底数为进位计数制的基数,而指数由各位数字在数

中的位置来决定(整数部分最低位的指数为0)。如:十进制数(基数为10)456,它们的位权就是当各位为1时的数值大小,456中的4的位权就是102,5的位权就是101,6的位权就是100。

在了解上述几个概念之后,以下我们重点讨论如何快速准确的将十进制数转化为二进制数(重点介绍整数部分的转换方法,

小数部分的转换方法可参照整数部分进行)。至于二进制整数、小数分别转化为十进制整数、小数方法为“按权展开相加”,具体方法可参阅有关教材及资料,本文不做详细讨论。

一、传统方法:“除R倒序取余”

十进制整数转换成其它R进制整数的一般方法为:除R取余数,直到商为0,得到的余数即为二进数各位的数码,该余数的反序排列即为该十进制数的整数部分转化为R进制数后的结果。对于十进制整数转换成二进制整数,只需将上述方法中的R变为2,遵循“除2倒序取余”即可。现在市面上的大多数计算机专业教材或参考书讲解的就是这种方法,但是很多初学者还是不太容易掌握,而且当需要转换的十进制整数较大时,在相对繁杂的除法运算中容易出错,很难保证正确率和运算速度,使其成为了很多计算机初学者所面临的一道难题。

例1:将十进制整数19转换成二进制数,即(19)10=(?)2

如箭头所示,将取得的余数按倒序排列即为最终结果,将十进制整数19转换成二进制数为10011。

二、快速转换法:“凑数法”

由于是要将十进制数转换成二进制数,所以该方法的前提是我们必须牢记这样一些数

字:20=1,21=2,22=4,23=8,24=16,25=32,26=64,27=128,28=256, 29=512,210=1024,……,即以2为底的幂指数,我们不妨称之为“常规整数”,而将常规数以外的数称为“非常规整数”。所谓

“凑数法”,就是要将非常规整数“凑成”若干个常规整数之和,再进行后面的运算,具体3步骤如下:

1.将题目给出的十进制整数拆分成两部分:一部分是小于该十进制整数并且最接近它的一个“常规整数”,另一部分是由此次拆分而产生的一个新“非常规整数”;

2.保持该常规数不变,而将步骤1中产生的新“非常规整数”按上述拆分原则继续拆分;

3.重复步骤2,直到原十进制整数被完全拆分成若干个“常规整数”之和的形式;

4.将步骤3中的若干个“常规整数”分别对应转换成以2为底的幂指数形式,将该结果中出现的幂指数在二进制数对应的位置填“1”,没有出现的幂指数在二进制数对应的位置填“0”,

这样产生的“0”、“1”序列即为最终结果。

例2:用“凑数法”将十进制整数19转换成二进制整数,即(19)10=(?)2

在以2为底的幂指数之和形式中,指数出现了0、1、4,故在二进制数的0权位、1权位和4权位填“1”,其它权位填“0”,得到二进制数

即10011就是十进制整数19转换成二进制整数的最终结果。

例3:将十进制小数0.375转化成二进制整数。

(0.375)10=(?)2

在以2为底的幂指数之和形式中,指数出现了-2、-3,故在二

进制数的-2权位、-3权位填“1”,其它权位填“0”,得到二进制数

再在最前面合并整数部分,即0.011就是十进制小数0.375转换成二进制小数的最终结果。这样,我们将传统的“乘2顺序取整”的十进制小数转成二进制小数的方法也用“凑数法”得以实现。需要注意的是,并非所有的十进制小数都能恰好“凑成”若干个“常规小数”之和的形式,这表明有时候十进制小数无法精确转换成二进制小数,属于正常现象。

通过以上例题我们可以看出,相对于传统的十进制数转换成二进制数的“除2倒序取余”求整数部分和“乘2顺序取整”求小数部分法而言,“凑数法”具有自己的一些优势:

(1)更易于理解和掌握。

(2)运算速度快,尤其当需要转换的十进制整数较大时,其运算速度体现的更加淋漓尽致。

(3)出错率更低,相对于乘除法运算来说,凑数法将进制转换变成了相对简单的加减运算,可以有效降低运算过程中的出错率。

希望“凑数法”能对计算机用户尤其是计算机初学者有所帮助,我们可以通过不断实践去了解它、掌握它和应用它。

相关文档
最新文档