计算机的由来

今天的计算机有着庞大久远的世系渊源,其中较早的一个计算设备是算盘。历史告诉我们,它可能源于中国古代且曾被用于早期希腊和罗马文明。算盘本身非常简单,一个矩形框里固定着一组小棍,而每个小棍上又各串有一组珠子(见图1)。在小棍上,珠子上下移动的位置就表示所存储的值。正是这些珠子的位置代表了这台“计算机”所表示和存储的数据。这台机器是依靠人的操作来控制算法执行的。因此,算盘自身只算得上一个数据存储系统,它必须在人的配合下才能成为一台完整的计算机器。

![图像说明文字](/api/storage/getbykey/screenshow?key=161207f447f079edf0f8)

图1 中国木制算盘

从中世纪到近代,人们开始探求更复杂的计算机器。一些发明人开始基于齿轮技术设计计算机器。采用这种技术的发明家有法国的布莱斯·帕斯卡尔(Blaise Pascal,1623—1662)、德国的戈特弗里德·威廉·莱布尼茨(Gottfried Wilhelm Leibniz,1646—1716)和英国的查尔斯·巴贝奇(Charles Babbage,1792—1871)等。这些机器利用齿轮的位置来表示数据,要在规定齿轮初始位置的基础上机械地输入数据。帕斯卡尔和莱布尼茨的机器所计算的结果是通过观察齿轮的最终位置得到的。而巴贝奇构想的机器,则可以把计算的结果打印在纸上,从而消除可能出现的抄写错误。

就执行算法的能力而言,我们可以看到这些机器在灵活性上的进步。帕斯卡尔的机器只是为了执行加法而设计,因此必须将正确的步骤序列嵌入到机器结构本身。同样,莱布尼茨的机器也把算法嵌入了其机器结构中,但它提供了多种算术运算供操作员选择。巴贝奇设计的差分机(Difference Engine)仅造了一个演示模型,可以通过修改执行各种计算,但他设计的分析机(Analytical Engine)(从未得到过建设资助)则能够在纸卡片上读取以洞孔形式表示的指令。所以,巴贝奇的分析机是可编程的。事实上,奥古斯塔·艾达·拜伦(Augusta Ada Byron,通称Ada Lovelace)经常被认为是世界上第一位程序员,她曾发表过一篇论文,阐述巴贝奇的分析机是如何通过编程实现各种计算的。

巴贝奇的差分机

查尔斯·巴贝奇设计的这台机器,的确是现代计算机设计的先驱。如果能用比较经济的技术制造出这台机器,如果当时商业和政府数据处理需求达到今天的规模,那么巴贝奇的思想可能在19世纪就引发了计算机革命。事实上,他在有生之年只造出了差分机的演示模型。该机器通过计算“逐次差分”来确定数字值。我们可以通过考虑整数平方的计算问题,深入了解这一技术。我们先从基础知识开始,0的平方是0,1的平方是1,2的平方是4,3的平方是9。据此,可以按照下面的方法得到4的平方(见图2)。现在,我们来计算一下已知平方之间的差:12 - 02= 1,22 - 12= 3,32 - 22= 5。然后,我们计算这些结果的差:3 - 1 = 2,5 - 3 = 2。注意看,这些差都是2。假设这个规律能够成立(数学上可以证明它是成立的),那么我们可以得出这样的结论:(42 - 32)和(32 - 22)之间的差也一定是2。因为(42 - 32)比(32 - 22)大2,所以42 - 32 = 7,42= 32 +7= 16。现在,我们已经知道了4的平方,那么就可以依据12、22、32和42的值继续计算5的平方。(虽然更深入地讨论逐次差分已经超出了本书范围,但是学过微积分的学生可能已观察到,前面的例子是基于“y = x2的二阶导数是一条直线”这个实事得出的。)

![未定标题1{237}](/api/storage/getbykey/original?key=1612514ea5eb5ae71d03)

图2

奥古斯塔·艾达·拜伦

奥古斯塔·艾达·拜伦(洛夫莱斯伯爵夫人)是计算界关注的焦点人物。艾达·拜伦的一生近乎悲惨,去世时还不到37岁(1815—1852)。她体弱多病,身处限制妇女从业的社会,是个不墨守成规的人。尽管她对很多科学都感兴趣,但最感兴趣的还是数学。1833年,目睹了查尔斯·巴贝奇的差分机样机演示后,她就被这台机器迷住了,从此对“计算科学”产生了兴趣。她把一篇讨论巴贝奇分析机设计的论文从法文翻译为英文,算是她最早对计算机科学做出的贡献。巴贝奇还鼓励她在翻译中增加一个附录,介绍该机器的应用,以及该机器如何编程实现各种任务的示例。巴贝奇对艾达·拜伦的工作十分热情,他希望论文的出版可以帮他得到资金援助,建造他的分析机。(作为拜伦勋爵的女儿,艾达·拜伦具有名人的地位,在生意场上也有一定的关系。)虽然巴贝奇最终没有得到资金援助,但是艾达·拜伦的附录保存了下来,人们认为该附录包含了第一批计算机程序的例子。关于巴贝奇对艾达的工作影响有多大,研究计算机历史的学者们一直争论不休。有些历史学家认为,巴贝奇作出了重大贡献,但另外一些人则认为,巴贝奇并没有帮到艾达,从很大程度上来看反而是一种阻碍。无论如何,奥古斯塔·艾达·拜伦都被认为是世界上第一位计算机程序员,美国国防部为了纪念这位伟大的女性,用她的名字命名了一种程序设计语言(Ada)。

通过纸卡片上的洞孔来传达算法的思想并不是源于巴贝奇。他是从约瑟夫·雅卡尔(Joseph Jacquard,1752—1834)那里得到这个想法的。约瑟夫·雅卡尔于1801年研制出一种织布机,它在织布过程中执行的步骤,是由宽大厚实的木制(或纸板)卡片上的洞孔样式决定的。因此,织布机的算法很容易进行修改,可以得出不同的编织设计。另一个受益于雅卡尔思想的人是赫尔曼·霍尔瑞斯(Herman Hollerith,1860—1929),他灵活运用这一概念——用纸卡片上洞孔的样式来表示信息,加速了美国1890年人口普查中的表格处理。(霍尔瑞斯的这项改造促成了IBM的诞生。)这种卡片最终被称作穿孔卡片,直到20世纪70年代,它仍是与计算机交互的流行工具。

从成本效益上来讲,19世纪的技术无法让帕斯卡尔、莱布尼茨和巴贝奇设计的复杂齿轮驱动机器付诸生产。但是,随着20世纪初期电子技术的进步,人们克服了这个障碍。这种进步的例子包括,乔治·斯蒂比兹(George Stibitz)的电子机械机器和马克一号(Mark I);前者由贝尔实验室于1940年建造,后者由霍华德·艾肯(Howard Aiken)和一组IBM工程师于1944年在哈佛大学建造。这些机器大量使用了电子控制的机械式继电器。从这个意义上说,这些机器几乎是刚造出来就过时了,因为其他研究人员已在应用电子管技术建造完全电子化的计算机。第一台真空管机器显然是阿塔纳索夫-贝瑞(Atanasoff-Berry)机器,由约翰·阿塔纳索夫(John Atanasoff)和他的助手克利福德·贝里(Clifford Berry),于1937~1941年,在艾奥瓦州立学院(现在的艾奥瓦州立大学)建造。另一台是称为巨人(Colossus)的机器,在汤米·弗劳尔斯(Tommy Flowers)的指导下建造于英国,该机器在第二次世界大战后期曾被用来破解德国的情报。(实际上,这类机器有十余台,但是由于军方的保密和国家安全问题而未能列入“计算机家谱”。)不久,更为灵活的机器出现了,如电子数字积分器和计算器(Electronic Numerical Integrator And Calculator,ENIAC),它是由约翰·莫奇利(John Mauchly)和普雷斯波·埃克特(J.Presper Eckert)在宾夕法尼亚大学莫尔电子工程学院研制的(见图3)。

![图像说明文字](/api/storage/getbykey/screenshow?key=161290ff16b42bf61d70)

图3 三个女人在操作莫尔学院的ENIAC主控制板。这台机器后来搬到了美国陆军弹道研究实验室(照片由美国陆军提供)

从那时起,计算机器的发展史就开始和技术进步紧紧相连,包括晶体管的发明(物理学家威廉·肖克利、约翰·巴丁和沃尔特·布拉顿因此获得了诺贝尔奖)和后来集成电路的开发(杰克·基尔比因此荣获了诺贝尔物理学奖)。由于这些技术,以往20世纪40年代房间大小的机器在数十年间缩小到了单机柜大小。与此同时,计算机器的处理能力每两年便会翻倍(这一趋势一直持续到了今天)。随着集成电路技术的进步,计算机中的许多部件都可封装在玩具大小的塑料块中做成芯片,放到电子市场上销售。

计算机的普及在很大程度上得益于台式计算机的发展。台式计算机的出现是计算机爱好者的功劳,他们通过芯片组合构建了家用计算机。正是在这些计算机爱好者的“地下”活动中,史蒂夫·乔布斯(Steve Jobs)和斯蒂芬·沃兹尼亚克(Stephen Wozniak)两个人制造出了有商业价值的家用计算机,并于1976年成立了苹果计算机公司(现称苹果公司),专门制造和销售他们的产品。其他经销类似产品的公司有Commodore、Heathkit和Radio Shack。虽然这些产品在计算机爱好者中很畅销,但是并没有被商业界普遍接受。面对大量的计算需要,这些商家仍然青睐于著名的IBM公司及其大型计算机。

1981年,IBM公司推出了它的第一款台式计算机,称为个人计算机,简称PC,其基础软件由一个称为微软(Microsoft)的年轻公司开发。PC一经推出立即获得了极大的成功,并且奠定了这种台式计算机在商界人士心目中作为日用品的地位。今天,术语PC已被广泛用于指称整个这一类机器(来自各个不同厂商),其设计都是从IBM公司最初的台式计算机演变而来的,而且它们大多数继续与微软公司的软件一起销售。不过,有时候,术语PC也能与通用术语台式机或笔记本电脑互换使用。

在20世纪后期,因特网(Internet)的出现大大改变了人们的沟通方式,这种技术将个人计算机连成了一个全球系统。在这个背景下,蒂姆·伯纳斯·李(Tim Berners-Lee)是英国的一位科学家,他提出了一个系统,这个系统可以通过因特网把计算机上存储的文档链接起来形成错综复杂的链接信息网,这便是万维网(World Wide Web),简称Web。为了能够访问Web信息,人们开发了一种叫做搜索引擎(search engine)的软件系统,筛选Web上的信息,对结果进行“归类”,然后通过搜索结果帮助用户研究特定内容。这一领域的主要参与者有谷歌、雅虎和微软。这些公司不断扩展其与Web相关的活动,而且经常会挑战我们的传统思维方式。

与此同时,台式计算机和笔记本电脑正在被人们所接受,并用于家庭,计算机器的微型化仍在继续。今天,大量的电子装置和设备中都嵌有微型计算机。例如,现在的汽车可能就有几十个运行全球定位系统(Global Positioning System,GPS)的小型计算机,用于监控发动机的功能,并提供控制汽车音频和电话通信系统的语音命令服务。

也许,计算机微型化最革命性的应用就是智能手机(smartphone)的扩展能力。智能手机是小型手持通用计算机,通话应用仅是其众多应用之一。从功能上讲,这种钱包大小的设备比几十年前的超级计算机还要强大,它配备有大量传感器和接口,包括照相机、话筒、指南针、触摸屏、加速计(用以检测手机的方向和动作),以及一系列无线技术(以便与其他智能手机和计算机通信)。很多人认为智能手机对于全球社会的影响大于PC革命。

本文节选自经典的计算机教程《计算机科学概论(第12版)》。

2 推荐
暂无评论,快来抢沙发哦~
杨海玲
杨海玲 V7

北京 丰台

5.7K经验值

http://www.douban.com/people/lelinglong/

2000年入行的IT图书出版圈老编辑一名,自2012年5月入职人民邮电出版社信息技术分社,担任高级策划。2005年-2012年4月任职于人民邮电出版社图灵公司,任图灵公司副总编。2000年-2005年5月任职于机械工业出版社华章公司。

一直从事IT相关外版图书引进出版与本版原创图书策划工作。

无论你想出版原创著作,与大家分享自己的技术心得,还是想推荐国外的经典好书,希望引进国内出版,或愿意参与技术图书翻译,为国内读者扫清英文阅读的障碍,都欢迎随时联系我。

@出版人杨海玲

更多>>

相关技术

相关图书

相关文章