在前几次的乱谈文章中,我们提到计算机的起源算盘,以及发展过程中出现的步进计算机以及差分机这些早期的计算设备无一例外都是使用了十进制的计算方法,也就是“逢十进一”,算盘每拨动十颗珠子就要向前进一位,步进计算机的齿轮每转动一圈(一圈是0~9十个数字)就会带动前一个齿轮转动一格十进制非常符合我们的计算思维,但为什么计算机发展到后来会将进制改为难以理解的二进制呢?,今天小编就来说说关于计算机为什么要二进制数据?下面更多详细答案一起来看看吧!

计算机为什么要二进制数据(计算机科技乱谈)

计算机为什么要二进制数据

在前几次的乱谈文章中,我们提到计算机的起源算盘,以及发展过程中出现的步进计算机以及差分机。这些早期的计算设备无一例外都是使用了十进制的计算方法,也就是“逢十进一”,算盘每拨动十颗珠子就要向前进一位,步进计算机的齿轮每转动一圈(一圈是0~9十个数字)就会带动前一个齿轮转动一格。十进制非常符合我们的计算思维,但为什么计算机发展到后来会将进制改为难以理解的二进制呢?

自古以来,我们日常中使用最多的就是十进制,其原因也十分简单,因为我们的手指一共有十根,如果人类在演化过程中只产生了六根手指,那可能我们现在最常用的可能就是六进制了。手指对于远古时期的人类来说无疑是最方便实用的天然计算工具了,只需通过简单的“扳手指”就能快速的计算自己的收获。随着生产力增加,十根手指无法满足生产计数时,“进位”的思想便慢慢出现,数完十根手指之后在心里默计一位,然后将手指归零继续计数,最原始的十进制便产生了。

现代计算机采用二进制,最根本的原因在于计算机的电子化。在使用齿轮的机械式计算机中,要表示十个数很简单,只需将齿轮分成十格,每格分别代表0~9十个数字即可非常简单的实现十进制。随着计算机的发展,机械齿轮远远不能满足运算速度的需求,于是齿轮变成了继电器、真空管、晶体管这些电子开关。电子开关的状态通常都只有“开”和“关”这两种,所以它只能表示“0~1”两个数。如果硬要将电子开关做成十进制,无疑会让电路变得十分复杂,出错的概率、维护的成本也会成倍增加。所以计算逻辑为硬件让出了道路,计算机最终使用了二进制。好在二进制只存在于计算机的底层计算逻辑中,我们日常生活中使用的电脑和手机几乎不会出现二进制的身影,即使是专业的编程人员也不需要使用二进制机器语言编写代码。

图片来源网络

除了电子开关的硬性要求之外,二进制本身还是具有很多的优点的。由于只有“0和1”两个数,所以运算法则变得极为简单。以乘法为例,十进制的0~9单位数乘法法则一共有55条(1*1=1,1*2=2,1*3=3等等),如果我们需要口算乘法的话通常都需要记住这55条法则,这就是我们小学时需要背诵的九九乘法表。再来看看二进制的0~1单位数乘法法则:0*0=0,0*1=0,1*1=1,可以看到乘法法则一共就3条,运算的简易性较十进制要简单的多,利于简化电路结构。

二进制的另一个优点就是“0和1”从逻辑上符合“真和假”的逻辑状态,而逻辑代数在数学上已经有了一个完整的体系。英国数学家乔治·布尔(George Boole)提出了以“真、假”逻辑为基础的代数体系,并且解决了所有的法则和运算,这个数学体系以他的名字命名为“布尔代数”。所以二进制计算有了一个现成的数学理论基础。

图片来源网络

计算机发展过程中也出现过三进制的情况,比如前苏联的CeTyHb三进制计算机,它使用电压的“正、负、零”来表示三进制的三种状态。在开发之初,它比同时代的二进制计算机要稳定和快速,但前苏联疏于维护,三进制也逐渐被淘汰,最终只有二进制计算机发展至今。

图片来源网络

​▎往期内容

[01]计算机科技乱谈:从算盘到15吨重的差分机之间到底经历了什么?

[02]计算机科技乱谈:史上第一位女程序员,她还是诗人拜伦的女儿