分享

计算机简史(一):从算筹到乘法机

 hleadery 2012-02-16

计算机简史(一):从算筹到乘法机

分类: 阅读|思考 448人阅读 评论(0) 收藏 举报

每件事物都有它的一段历史,现代计算机更是经历了加法机、乘法机、分析机、图灵机等阶段。如今的电脑到底是怎么发展到如今这个样子的呢?我相信你一定很感兴趣。

最早的人们我猜想是用手指头来算数,所以大部分的古代文明都是用的十进制。但是发现十个指头不够用,于是人们使用一些木棍、石头、草绳之类的东西来计数。不过世界上第一个真正意义上的计算工具是中国在春秋时期发明的算筹。在算筹计数法中,以纵横两种排列方式来表示单位数目的,其中1-5均分别以纵横方式排列相应数目的算筹来表示,6-9则以上面的算筹再加下面相应的算筹来表示。表示多位数时,个位用纵式,十位用横式,百位用纵式,千位用横式,以此类推,遇零则置空。这种计数法遵循一百进位制。后来,中国又发明了算盘,可见那时候的中国在数学领域一直是领先于世界的。

像算盘这种计算工具毕竟是需要由人来操作,对于大型计算来说不仅效率低,而且很容易出错。于是,人们很自然的想到要实现一个机械计算机。世界上第一部机械式计算机是在1642年由法国人帕萨卡发明的加法机。帕斯卡,一个很熟悉的名字?物理中的压强单位不是叫帕斯卡吗?不是有一个编程语言叫Pascal吗?没错,他们是同一个人。帕斯卡是一位全才,身兼数学家、物理学家、哲学家、散文家于一身。可惜天妒英才,他在39岁就去世了,虽然他在世上很短,但是留给后世的东西却很多,有兴趣的人可以看看他写的《思想录》。

帕斯卡加法机的基本原理是:机器中有一组轮子,每个轮子上刻着从0到9的10个数字。右边第一个轮子上的数字表示十位数字,依此类推。在两数相加时,先在加法机的轮子上拨出一个数,再按照第二个数在相应的轮子上转动对应的数字,最后就会得到这两上数的和。如果某一位两上数字之和超过了10,加法机就会自动地通过齿轮进位。因为某一位的小轮转动了10个数字后,才迫使下一个小轮正好转动一个数字。计算所得的结果在加法机面板上的读数窗上显示,计算完毕要把轮子挨个恢复到零位。从中可以看出帕斯卡所发明的加法机还不算是完全机械式的计算机,应该属于半自动的计算机,只是在进位上实现了自动。不过他的加法机至少向人们指引了一条道路,即可以用一种纯粹的机械装置去代替人们的记忆和思考。

加法机顾名思义只能进行加减运算,对于乘除运算却无能为力。不过在时隔32年后,乘法机由另一位伟大的天才莱布尼茨发明。这个名字是不是很熟悉?没错他就是和牛顿齐名的发明微积分、二进制的那位。莱布尼兹很大一部分灵感都是由帕斯卡的加法机而来。到底怎么用机械去实现乘法呢?很明显机械装置是不会背乘法口诀的,只能用连续加法来实现。为了实现连续加法,莱布尼兹发明了一个名叫“步进轮”的装置。步进轮是一个有9个齿的长圆柱体,9个齿依次分布于圆柱表面;旁边另有个小齿轮可以沿着轴向移动,以便逐次与步进轮啮合。每当小齿轮转动一圈,步进轮可根据它与小齿轮啮合的齿数,分别转动1/10、2/10圈……,直到9/10圈,这样一来,它就能够连续重复地做加法。

莱布尼兹设计的乘法机能够进行加减乘除四种运算,给当时的数学计算带来很大的方便。并为后人设计出更强大的计算机奠定了坚实的基础。

 

计算机简史(二):从乘法机到图灵机

分类: 阅读|思考 427人阅读 评论(0) 收藏 举报
虽然乘法机能够进行简单的四则运算,但是人们需要一种更加聪明的机器,能够按照人类的意愿自动完成任务的机器。
1819年,巴贝奇制作了一台"差分机"。所谓"差分"的含义,是把函数表的复杂算式转化为差分运算,用简单的加法代替平方运算。1812年,20岁的巴贝奇从法国人杰卡德发明的提花编织机上获得了灵感,差分机设计闪烁出了程序控制的灵光──它能够按照设计者的旨意,自动处理不同函数的计算过程。巴贝奇耗费了整整十年光阴,于1822年完成了第一台差分机,它可以处理3个不同的5位数,计算精度达到6位小数,当即就演算出好几种函数表。由于当时工业技术水平极低,第一台差分机从设计绘图到机械零件加工,都是巴贝奇亲自动手完成。成功的喜悦激励着巴贝奇,他连夜奋笔上书皇家学会,要求政府资助他建造第二台运算精度为20位的大型差分机。然而,第二台差分机在机械制造过程中,因为主要零件的误差达不到每英寸千分之一的高精确度,以失败告终,但他把全部设计图纸和已完成的部分零件送进伦敦皇家学院博物馆供人观赏。
巴贝奇的分析机大体上有三大部分:其一是齿轮式的"存贮库",巴贝奇称它为"仓库"(Store),每个齿轮可贮存10个数,齿轮组成的阵列总共能够储存1000个50位数。分析机的第二个部件是所谓"运算室",它被巴贝奇命名为"作坊"(Mill),其基本原理与帕斯卡的转轮相似,用齿轮间的啮合、旋转、平移等方式进行数字运算。为了加快运算速度,他改进了进位装置,使得50位数加50位数的运算可完成于一次转轮之中。第三部分巴贝奇没有为它具体命名,其功能是以杰卡德穿孔卡中的"0"和"1"来控制运算操作的顺序,类似于电脑里的控制器。他甚至还考虑到如何使这台机器处理依条件转移的动作,比如,第一步运算结果若是"1",就接着做乘法,若是"0"就进行除法运算。此外,巴贝奇也构思了送入和取出数据的机构,以及在"仓库"和"作坊"之间不断往返运输数据的部件。
但分析机终于没能造出来,巴贝奇和阿达失败了。巴贝奇和阿达的失败是因为他们看得太远,分析机的设想超出了他们所处时代至少一个世纪!社会发展的需求和科学技术发展的可能,使得他们注定要成为的悲剧人物。尽管如此,巴贝奇和阿达为电脑科学留下了一份极其珍贵的精神遗产,包括30种不同设计方案,近2000张组装图和50000张零件图。
100多年之后,图灵机的概念被提出。为了模拟人的这种运算过程,图灵构造出一台假想的机器,该机器由以下几个部分组成:
1.一条无限长的纸带 TAPE。纸带被划分为一个接一个的小格子,每个格子上包含一个来自有限字母表的符号,字母表中有一个特殊的符号 表示空白。纸带上的格子从左到右依此被编号为 0, 1, 2, ... ,纸带的右端可以无限伸展。 
2.一个读写头 HEAD。该读写头可以在纸带上左右移动,它能读出当前所指的格子上的符号,并能改变当前格子上的符号。 
3.一套控制规则 TABLE。它根据当前机器所处的状态以及当前读写头所指的格子上的符号来确定读写头下一步的动作,并改变状态寄存器的值,令机器进入一个新的状态。 
4.一个状态寄存器。它用来保存图灵机当前所处的状态。图灵机的所有可能状态的数目是有限的,并且有一个特殊的状态,称为停机状态。参见停机问题。 
注意这个机器的每一部分都是有限的,但它有一个潜在的无限长的纸带,因此这种机器只是一个理想的设备。图灵认为这样的一台机器就能模拟人类所能进行的任何计算过程。
 

计算机简史(三):从图灵机到IBM

分类: 阅读|思考 317人阅读 评论(2) 收藏 举报

自从图灵机的概念被提出之后,当时的计算机界掀起了一股计算机热潮。不久之后,冯·诺依曼则提出了更加实用的计算机思想。冯·诺依曼的重要三条思想是: 1、计算机硬件是由5大基本部分组成:运算器,控制器,存储器,输入设备,输出设备。 2、采用二进制。 3、程序和数据一样存放在存储器中。从中可以看出该思想和现在的计算机已经十分接近了,实际上现代计算机的理念基本上是传承与冯氏思想的,不同的只是硬件,现代计算机的硬件比起以前的更小、更快。
1945年3月他们发表了一个全新的存储程序式通用电子计算机方案—电子离散变量自动计算机(EDVAC)。随后于1946年6月,冯·诺伊曼等人提出了更为完善的设计报告《电子计算机装置逻辑结构初探》。同年7~8月间,他们又在莫尔学院为美国和英国二十多个机构的专家讲授了专门课程《电子计算机设计的理论和技术》,推动了存储程序式计算机的设计与制造。

1949年,英国剑桥大学数学实验室率先制成电子离散时序自动计算机(EDSAC);美国则于1950年制成了东部标准自动计算机(SFAC)等。至此,电子计算机发展的萌芽时期遂告结束,开始了现代计算机的发展时期。

在创制数字计算机的同时,还研制了另一类重要的计算工具——模拟计算机。物理学家在总结自然规律时,常用数学方程描述某一过程;相反,解数学方程的过程,也有可能采用物理过程模拟方法,对数发明以后,1620年制成的计算尺,己把乘法、除法化为加法、减法进行计算。麦克斯韦巧妙地把积分(面积)的计算转变为长度的测量,于1855年制成了积分仪。

19世纪数学物理的另一项重大成就——傅里叶分析,对模拟机的发展起到了直接的推动作用。19世纪后期和20世纪前期,相继制成了多种计算傅里叶系数的分析机和解微分方程的微分分析机等。但是当试图推广微分分析机解偏微分方程和用模拟机解决一般科学计算问题时,人们逐渐认识到模拟机在通用性和精确度等方面的局限性,并将主要精力转向了数字计算机。电子数字计算机问世以后,模拟计算机仍然继续有所发展,并且与数字计算机相结合而产生了混合式计算机。模拟机和混合机已发展成为现代计算机的特殊品种,即用在特定领域的高效信息处理工具或仿真工具。

20世纪中期以来,计算机一直处于高速度发展时期,计算机由仅包含硬件发展到包含硬件、软件和固件三类子系统的计算机系统。计算机系统的性能—价格比,平均每10年提高两个数量级。计算机种类也一再分化,发展成微型计算机、小型计算机、通用计算机(包括巨型、大型和中型计算机),以及各种专用机(如各种控制计算机、模拟—数字混合计算机)等。

计算机器件从电子管到晶体管,再从分立元件到集成电路以至微处理器,促使计算机的发展出现了三次飞跃。在电子管计算机时期(1946~1959),计算机主要用于科学计算。主存储器是决定计算机技术面貌的主要因素。当时,主存储器有水银延迟线存储器、阴极射线示波管静电存储器、磁鼓和磁心存储器等类型,通常按此对计算机进行分类。

到了晶体管计算机时期(1959~1964),主存储器均采用磁心存储器,磁鼓和磁盘开始用作主要的辅助存储器。不仅科学计算用计算机继续发展,而且中、小型计算机,特别是廉价的小型数据处理用计算机开始大量生产。

1964年,在集成电路计算机发展的同时,计算机也进入了产品系列化的发展时期。半导体存储器逐步取代了磁心存储器的主存储器地位,磁盘成了不可缺少的辅助存储器,并且开始普遍采用虚拟存储技术。随着各种半导体只读存储器和可改写的只读存储器的迅速发展,以及微程序技术的发展和应用,计算机系统中开始出现固件子系统。

20世纪70年代以后,计算机用集成电路的集成度迅速从中小规模发展到大规模、超大规模的水平,微处理器和微型计算机应运而生,各类计算机的性能迅速提高。随着字长4位、8位、16位、32位和64位的微型计算机相继问世和广泛应用,对小型计算机、通用计算机和专用计算机的需求量也相应增长了。

微型计算机在社会上大量应用后,一座办公楼、一所学校、一个仓库常常拥有数十台以至数百台计算机。实现它们互连的局部网随即兴起,进一步推动了计算机应用系统从集中式系统向分布式系统的发展。

在电子管计算机时期,一些计算机配置了汇编语言和子程序库,科学计算用的高级语言FORTRAN初露头角。在晶体管计算机阶段,事务处理的COBOL语言、科学计算机用的ALGOL语言,和符号处理用的LISP等高级语言开始进入实用阶段。操作系统初步成型,使计算机的使用方式由手工操作改变为自动作业管理。

进入集成电路计算机发展时期以后,在计算机中形成了相当规模的软件子系统,高级语言种类进一步增加,操作系统日趋完善,具备批量处理、分时处理、实时处理等多种功能。数据库管理系统、通信处理程序、网络软件等也不断增添到软件子系统中。软件子系统的功能不断增强,明显地改变了计算机的使用属性,使用效率显著提高。

在现代计算机中,外围设备的价值一般已超过计算机硬件子系统的一半以上,其技术水平在很大程度上决定着计算机的技术面貌。外围设备技术的综合性很强,既依赖于电子学、机械学、光学、磁学等多门学科知识的综合,又取决于精密机械工艺、电气和电子加工工艺以及计量的技术和工艺水平等。

外围设备包括辅助存储器和输入输出设备两大类。辅助存储器包括磁盘、磁鼓、磁带、激光存储器、海量存储器和缩微存储器等;输入输出设备又分为输入、输出、转换、、模式信息处理设备和终端设备。在这些品种繁多的设备中,对计算机技术面貌影响最大的是磁盘、终端设备、模式信息处理设备和转换设备等。

新一代计算机是把信息采集存储处理、通信和人工智能结合在一起的智能计算机系统。它不仅能进行一般信息处理,而且能面向知识处理,具有形式化推理、联想、学习和解释的能力,将能帮助人类开拓未知的领域和获得新的知识。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多