相信大部分朋友们都有听过8421,但真正理解的又有多少呢?8421可以说是一种非常好用的“工具”,用于二进制与十进制数之间的运算。那么,8421到底是什么?如何运用?这篇文章将告诉你答案。
8421其实是一种编码方式。
我们都知道,电脑计算机的语言就是二进制,所以我们要想使用计算机,就得用二进制与它交流。但我们日常生活中使用的都是十进制,所以为了便于应用,就有了用二进制表示十进制的编码——BCD码,而8421码是最常用的BCD码。
定义是这么说的,从四位二进制数中取出十种组合表示十进制数的0到9,如1001表示9、0011表示3……四位二进制数就好比四个位置,这四个位置分别坐着8、4、2、1,但这并不说明四个数字都是有效的。
那如何才能使该位置上的数字有效呢?
简单,让这个位置变成1。由于是二进制数,所以四个位置上,只能坐1或0,若为1,就表示该位置上对应的数字有效,若为0,则表示该位置上的数无效,等于0。例如下图所示,想要4有效,就让4对应位置变成1,此时就是0100,也就是说,0100这个二进制码就表示了十进制数的4。
这就好比有一排座位,它们分别是班长、副班长、组长、班员专属位置,如果班长位置上为1,就说明班长坐在位置上了,而副班长位置为0,则说明副班长不在座位上。
同理,8421四个位置,只要对应位置为1,就表示该位置有效,例如上图的1100,前面的两个1,分别表示了8和4有效,而后面的两个0就表示2和1无效,最终就可以得出二进制数1100表示了十进制数的12(8+4)。看到这里,你明白了吗?明白了的话,问个小问题,二进制数1010表示十进制数的多少?评论区告诉我吧。(答案:8+2=10)
大家如果细心一点,就可以发现,8421其实并不仅仅表示了0到9,如上面的例子中1100就表示了12,显然大于9了。所以,其实8421是可以推广使用的,这就需要我们举一反三了。今天,我就按我自己的理解,来说两种8421的其他用法。
首先是8421在二进制数转换为十进制数中的应用。8421其实就是不断×2得来的(即2的n-1次方),以1作为起点,1×2=2,2×2=4,4×2=8,显然,再往上乘,就是8×2=16、16×2=32……换言之,8421的四个位置是可以扩充的,如扩充到168421。
那为什么要扩充呢?这是因为8421四个位置坐满,即上图所示的1111,最大也只能表示十进制数的15,如果十进制数大于15,那8421就无法表示了。就像测量表计的量程被超,无法测量一样,所以只能增大量程。
8421扩充就是在8的左边乘2增加一个位置,变成168421,此时这五个位置的二进制数,最大11111就能表示十进制数的16+8+4+2+1=31了,依此类推,若十进制数大于31,那就在16的左边乘2再增加一个位置变成32168421……
反之,二进制数转换为十进制数,其实就是直接将各个位置上对应的有效数字相加。例如随便给个二进制数1010011,要想知道它转换为十进制数等于多少,计算步骤如下:
第一步,先看它有多少个位置,如七位;
第二步,从右到左依次乘2得出每个位置依次为6432168421;
最后,将有效数字相加,得到64+16+2+1=83;
这就算出了101011的十进制大小为83。
8421除了可以用于二进制转十进制外,还可以用于十进制转二进制。举个例子,如十进制数412,要将它转为二进制数,步骤如下:
第一步,看412最大能坐“8421”的哪个位置,这里为第九个位置的256(从右到左数),那么第九个位置就有效,为1;
第二步,412减去256等于156,而156最大能坐“8421”的第八个位置128,第八个位置依然为1,依此类推,156减去128等于28,28-16=12,12-8=4,4-4=0;
最后将有效位置写1,无效位置写0,得到412的二进制数为11001 1100。
一句话总结就是,将十进制数转二进制数,可以将十进制数依次对“8421”的位置数从左到右减去最大所能减的数,直到结果为0,最后将所减数的位置写1,其余位置补0,最终得出二进制数。例如十进制数578,最大能减512,那么二进制数的最高位就是第十位,然后依次相减,得到二进制数为100100 0010,你学会了吗?
此外,你对8421还有什么应用?
转贴自网络