现代计算机爱上二进制----为什么要用二进制
要谈这个问题,我们先简单介绍下二进制、布尔代数和计算机的历史
一、二进制简史
大约产生于公元前第一个千年的初期的《周易》,开始主要是一部占卜用书,里边的两个符号可能分别代表“是”和“不”,这本书只对莱布尼茨的研究有参考和启发的作用,如果就此说二进制乃是起源于古代中国,那么《周易》便是二进制的起源。在德国图灵根著名的郭塔王宫图书馆(Schlossbiliothke zu Gotha)保存着 一份弥足珍贵的手稿,其标题为:“1与0,一切数字的神奇渊源。这是造物的秘密美妙的典范,因为,一切无非都来自上帝。”这是德国天才大师莱布尼茨(Gottfried Wilhelm Leibniz,1646 - 1716)的手迹。但是,关于这个神奇美妙的数字系统,莱布尼茨只有几页异常精炼的描述。而莱布尼茨的研究成果与中国古代的一本著作有着莫大的关联,这本书便是《周易》(又名《易经》)。可见,《易经》是通过二进制来研究天地之间万物的一门科学,是二进制的最早起源、运用。在莱布尼茨眼中,这就是他的二进制的中国翻版,但实际莱布尼茨是受中国阴阳太极影响,只不过他付出了诸多研究,推演出二进制。他感到这个来自古老中国文化符号系统与他的二进制之间的关系实在太明显了,因此断言:二进制乃是具有世界普遍性的、最完美的逻辑语言。但我们要知道的是,将二进制与古代中国《易经》相联的尝试是不符合实际的。但就连莱布尼茨都没有想到的是:他的二进制数学指向的不是古代中国,而是未来。
二、电子计算机的技术发展
- 二进制与逻辑代数
1854年,英国数学家乔治布尔(George Boole)发表了一篇具有里程碑意义的论文,详细描述了一种逻辑代数系统,该系统将被称为布尔代数。他的逻辑推理在数字电子电路的设计中起了重要的作用。 - 继电器开关实现二进制的设想
1937年,克劳德香农(Claude Shannon)在麻省理工学院发表了他的硕士论文,在历史上第一次使用电子继电器和开关实现了布尔代数和二进制算术。香农的论文题目是对继电器和开关电路的符号分析,基本建立了实用的数字电路设计。 - 继电器计算机
最早使用继电器制造计算机的是贝尔实验室的乔治·斯蒂比兹(George Stibitz),1937年,他制作出了一个可完成两位数加法的模型,被称为Model-K。其实,Model-K只是一个继电器计算器的演示品,还很简陋。在上级的支持下,1940年初,继电器计算器M-1成功运行,它使用了440个继电器,可以解决当时贝尔实验室做电学研究中面对的大量复数的加减乘除四则运算问题。它开创了一个时代,这就是数字计算机时代,使用二进制来运算,而之前的计算机械大都是基于常用的十进制数的。 - 第一台电脑
1946年诞生了第一台现代电子计算机ENIAC,ENIAC程序和计算是分开的,也就意味着你需要手动输入程序。这种程序的输入需要借助手工插接线的方式进行的,没有存储器且它用布线接板进行控制,运算速度可想而知。而且ENIAC使用的是十进制计算,并不是二进制。 - 冯诺依曼的设想
1945年,冯诺依曼和他的研制小组在共同讨论的基础上发表了一个全新的“存储程序通用电子计算机方案”——EDVAC(Electronic Discrete Variable Automatic Computer),这是一份长达101页的总结报告。报告广泛而具体地介绍了制造电子计算机和程序设计的新思想。EDVAC方案明确奠定了新机器由五个部分组成,包括:运算器、逻辑控制装置、存储器、输入和输出设备,并描述了这五部分的职能和相互关系.报告中,冯诺依曼对EDVAC中的两大设计思想作了进一步的论证,为计算机的设计树立了一座里程碑。设计思想之一是二进制,他根据电子元件双稳工作的特点,建议在电子计算机中采用二进制。报告提到了二进制的优点,并预言,二进制的采用将大大简化机器的逻辑线路。
- 冯诺依曼的实现
1952 年由计算机之父冯诺依曼设计的电子计算机EDVAC问世。与它的前任ENIAC不同,EDVAC采用二进制,而且是一台冯诺依曼结构的计算机。冯.诺伊曼的设想在这台计算机上得到了圆满的体现。EDVAC是第一台现代意义的通用计算机。它由五个基本部分组成:运算器CA;控制器CC;存储器M;输入装置I;输出装置O。这种体系结构一直延续至今,现在使用的计算机,其基本工作原理仍然是存储程序和程序控制,所以现在一般计算机被称为冯诺依曼结构计算机。
三、计算机使用二进制优点
从上面的历史回顾,我们可以看导,二进制特别适合现代电子技术特点,使用二进制作为现代计算机的运算基础有如下优点:
- 电路中容易实现 :当计算机工作的时候,电路通电工作,于是每个输出端就有了电压。电压的高低通过模数转换即转换成了二进制:高电平是由1表示,低电平由0表示。也就是说将模拟电路转换成为数字电路。这里的高电平与低电平可以人为确定,一般地,2.5伏以下即为低电平,3.2伏以上为高电平。二进制数码只有两个(“0”和“1”)。电路只要能识别低、高就可以表示“0”和“1”。
- 物理上最易实现存储 :
基本道理:二进制在物理上最易实现存储,通过磁极的取向、表面的凹凸、光照的有无等来记录。
具体道理:对于只写一次的光盘,将激光束聚住成1--2um的小光束,依靠热的作用融化盘片表面上的碲合金薄膜,在薄膜上形成小洞(凹坑),记录下“1”,原来的位置表示记录“0”。 - 便于进行加、减运算和计数编码。易于进行转换,二进制与十进制数易于互相转换。简化运算规则:两个二进制数和、积运算组合各有三种,运算规则简单,有利于简化计算机内部结构,提高运算速度。
电子计算机能以极高速度进行信息处理和加工,包括数据处理和加工,而且有极大的信息存储能力。数据在计算机中以器件的物理状态表示,采用二进制数字系统,计算机处理所有的字符或符号也要用二进制编码来表示。用二进制的优点是容易表示,运算规则简单,节省设备。人们知道,具有两种稳定状态的元件(如晶体管的导通和截止,继电器的接通和断开,电脉冲电平的高低等)容易找到,而要找到具有10种稳定状态的元件来对应十进制的10个数就困难了 - 便于逻辑判断(是或非)。适合逻辑运算:逻辑代数是逻辑运算的理论依据,二进制只有两个数码,正好与逻辑代数中的“真”和“假”相吻合。二进制的两个数码正好与逻辑命题中的“真(Ture)”、“假(False)或称为”是(Yes)、“否(No)相对应。
- 用二进制表示数据具有抗干扰能力强,可靠性高等优点。因为每位数据只有高低两个状态,当受到一定程度的干扰时,仍能可靠地分辨出它是高还是低。
总的来说,在计算机中,采用二进制的主要原因是:两个状态的系统容易实现 、运算法则简单、可进行逻辑运算。