九、二进制
同学们在进行整数四则计算时,用的都是十进制,即“满10进一”,对于其他进制则感到陌生。实际上,你只要留心一下,在我们的日常生活中,不仅使用十进制,还使用其他许多进制呢!你不信?我举一些例子。
两只袜子为一双,两只水桶为一对,这里使用的是二进制;十二支铅笔为一打,十二个月算一年,这里使用的是十二进制;六十秒是一分,六十分是一时,这里使用的是六十进制;二十四时为一天,这里使用的是二十四进制;100平方分米等于一平方米,100平方厘米等于一平方分米,这里使用的是一百进制;1000米等于一千米,1000克等于1千克,这里使用的是一千进制;……。
怎么样?实际上还可以发现更多的这样的例子。
随着科学技术的发展,数字电子计算机的使用日益普遍,每位同学可能都使用过电子计算器吧?可是你们要知道,计算器内部进行的计算就使用的是二进制数。我们经常和计算器打交道,应该懂一些二进制数方面的知识。
1.什么叫二进制
所谓二进制,就是只用0与1两个数字,在计数与计算时必须是“满二进一”。即每两个相同的单位组成一个和它相邻的较高的单位(所以任意一个二进制数只需用“0”与“1”表示就够了)。例如:2在二进制中是10;3写成二进制数是11;4写成二进制数便是100,那么5呢?应该是101。
同学们按照“逢二进一”(或“满二进一”)的法则,很容易得到以下两种进制的数字的对照表:
表1
二进制的最大优点是:每个数的各个数位上只有两种状态——0或1。这样,我们便可以通过简单的方法,例如白与黑、虚与实、负与正、点与划、小与大、暗与亮(在计算机中主要用电压的高与低)等等手段加以表示。下面表2中列出了在二进制中13的几种不同表示方法。
表2
当然,二进制也有不足,正如大家看到的那样,同一个数在二进制中要比在十进制中位数多得多。
60进制计算器 2.十进制与二进制的互相转化
今天,当我们写上一个数目1997时,实际上意味着我们使用了“十进制”数,即
1997=1×1000+9×100+9×10+7×1
也就是说:1997中含有一个1000,九个100,九个10与七个1。
在表1中可以看到:二进制数10表示十进制数2;二进制数100,表示十进制数4;二进制数1000,表示十进制数8;二进制数10000表示十进制数16;…;可以看出规律:二进制数100000应该表示十进制数32,…。那么我们写下一个二进制数10110,则应表示它含有一个16,一个4与一个2,也就是
10110=1×16+0×8+1×4+1×2+0×1
明白了上面所说的两点,则二进制与十进制之间的转化的道理就容易懂了。为了叙述的方便,我们约定:用( )2表示括号内写的数是二进制数,如(1011)2;用( )10表示括号中写的数是十进制数,如(37)10。
例1 把(10110)2改写成十进制数。
解 (10110)2=1×16+0×8+1×4+1×2+0×1
=16+4+2
=(22)10
例2 把(1110101)2改写成十进制数。
分析:因为位数太多,我们先从低位写起。
解 (1110101)2=1×1+0×2+1×4+0×8+1×16+1×32+1×64
=1+4+16+32+64
=(117)10
从上面两道例题可以看到:将一个二进制数写成十进制数的第一步骤是:将二进制数的各数位上数字改写成相应的十进制数。因为是“满二进一”,所以高位是相邻低一位数的2倍。一个二进制数的各个数位(由低位到高位)对应十进制数的规律是:
1,2,4,8,16,32,64,128,256,512,1024,…
第二个步骤是将各数位上对应的十进制数求和,所得结果便是相应的十进制数。再看一题。
例3 将(110100111)2改写成十进制数。
分析:还是由低位写起。
解 (110100111)2=1×1+1×2+1×4+0×8+0×16+1×32+0×64+1×128+1×256
=1+2+4+32+128+256
=(423)10
下面我们介绍如何将一个十进制数改写成相应的二进制数。
例4 把(60)10改写成二进制数。
解 (60)10=32+28
=32+16+12
=32+16+8+4
=32+16+8+4+0×2+0×1
=(111100)2
说明:从解题过程中立即便能看出,将十进制数写成二进制数的过程,正好与将二进制数改写成十进制数的过程相反:先由高位开始考虑,将十进制数尽可能地凑出相应二进制数的最高位,然后逐步往下进行。
例5 把(45)10改写成二进制数。
分析:(45)10不足64,所以它对应的二进制数的最高位是32,即45=32+13,剩下的13不足16,则向下一位考虑。45=32+0×16+(8+5),剩下的5中包含一个4,即45=32+0×16+8+4+1,最后一位数是1,又不足2,所以对应的二进位数又空一位。
解 (45)10=32+0×16+8+4+0×2+1
=(101101)2
练一练:
(1)将(31)10改写成二进制数;
(2)将(78)10改写成二进制数。
下面我们再介绍一种将十进制数写成二进制数的常用方法——除二倒取余法。例如要将(71)10写成二进制数,参见下式。我们将71除以2,余数1相应写在右边(如果除尽,余数则写0);再将商35除以2,余数1相应写在右边;再将这步的商17除以2,重复上述过程,直到商等于1为止。并且最后一步的商“1”也写到右边余数那一列的最下面。最后将这列余数由下到上写成一行数,这行数便是(71)10的二进制数表示法。即
(71)10=(1000111)2
例6 用除二倒取余法将(38)10写成二进制数。
解 ∵
∴(38)10=(100110)2
例7 用两种方法将(107)10改写成二进制数。
解 方法一
(107)10=64+43
=64+32+11
=64+32+0×16+8+3
=64+32+0×16+8+0×4+2+1
=(1101011)2
方法二 ∵
∴(107)10=(1101011)2
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论