第一章 火种 蒸汽动力时代的梦想

用开关电路来取代机械开关的好处很多,好处之一是可以大大缩小计算设备的体积。实际上,第一台电动逻辑计算机是本杰明·布拉克在1930年发明的一台便携式设备,它可以装入一个公文包。这台机器能够处理推理形式的语句。例如,假设“所有男人必有一死,索克雷兹是个男人”,因此它可以接受“索克雷兹必有一死”的推理,而拒绝“索克雷兹是个女人”的推理。这种错误推理会关闭电路,并使机器亮起报警指示灯,表示出现了逻辑推理错误。

19世纪60年代,美国逻辑学家查尔斯·桑德斯·皮尔斯开始讲授乔治·布尔著作的课程,布尔代数学就是以乔治·布尔的名字命名的。从此,皮尔斯就把符号逻辑学传到了美国,并且在授课过程中大幅度修改和发展了布尔的代数学。布尔以无可争议的方式将逻辑学与数学结合起来,而在19世纪中期,皮尔斯比其他任何人都更加精通布尔代数学。

虽然巴比杰为它的分析机设计了三个非常详细的不同方案,但是他从来没有造出过这样的机器,也没有制造过比较简单然而功能更强大的差分机。一个多世纪以来,人们认为他当时的机械制造技术还无法制造出这种机器需要的成千上万个精密零部件。后来到了1991年,伦敦科学博物馆负责计算机设备的馆长多伦·斯韦特使用巴比杰当年可以得到的技术、工艺和材料,成功地造出了巴比杰设计的差分机。斯韦特的成功是对巴比杰一生的巨大讽剌。一个世纪前,巴比杰已经成功地设计出计算机,他的机器实际上是能够运行的,并且本来是能够制造成功的。巴比杰未能实现其梦想的原因,完全是因为他无法筹措到足够的资金,而无法筹措到资金,则主要是因为他的工作不合那些能够提供资金的人的口味。

我希望蒸汽动力能够进行各种数学计算。

电气技术的发展为电子设备的问世创造了条件。正当人们用继电器取代了巴比杰的蒸汽驱动的车轮和齿轮的时候,依阿华州立大学的数学和物理学教授约翰·阿塔纳索夫发现电子元件可以代替继电器。在美国卷入第二次世界大战前不久,阿塔纳索夫在克利福德·贝里的帮助下设计出了阿塔纳索夫-贝里计算机(ABC),它的开关部件采用的是电子管而不是继电器。这种取代实现了一个重大的技术飞跃。从理论上讲,电子管计算机的运算速度和运行效率比采用继电器的计算机要高得多。与巴比杰的分析机一样,ABC计算机也从未制造成功,原因也许是阿塔纳索夫为制造该设备而筹得的经费还不足7000美元。阿塔纳索夫和贝里组装了一台简单的样机,它的线路错综复杂,使用了许多的电子管,与早期的台式计算器十分相似。由于采用电子管作为开关元件,

拜伦的女儿奥古斯坦·艾达是巴比杰的同事和赞助人,她本人是位作家,又是个业余数学家,她经常撰文向受过高等教育的人士和英国贵族中的科技赞助人介绍巴比杰的科学思想。她还编写了许多能使巴比杰的分析机懂得如何解算数学问题的指令。由于她从事的这些工作,许多人将艾达称为世界上的第一位计算机程序员。美国国防部根据她在提出计算机编程理论方面做出的重大贡献,于20世纪80年代用她的名字命名了Ada编程语言。

——19世纪发明家查尔斯·巴比杰

巴比杰设计的分析机实际上是一台用钢和铜制成的闪闪发亮的庞然大物,它工作时会发出巨大的声响,而且造价极其昂贵。数字存储在由齿轮组成的寄存器中,数字的输入和移位是通过凸轮和棘轮装置进行的。据说它最多能够存储1000个数字,每个数字最多为50位。这种内部存储能力用今天的术语来说称为计算机的内存容量。按照现代标准,分析机的运行速度实在太慢了,它每秒钟进行加法运算的次数还不到一次,不过它拥有的内存却比20世纪40年代和50年代最早的实用计算机大,甚至比70年代初最早的微型计算机的内存还要大。

英国诗人拜伦和雪莱非常关注科学技术给人类生活带来的变化。在一个大雨滂沱的夏日,他们在瑞士谈论起人造生命和人造思维的问题,他们想,能不能“人工制造人体的器官,将它们组装在一起,并使之具备生命的活力。”雪莱的夫人玛丽·雪莱根据他们谈话的思路,在她的著名小说《弗兰肯斯坦》中塑造了一个人造生命的怪物,向蒸汽时代的读者展示了一个惊心动魄的寓言故事。19世纪早期引来了一个机械化时代,蒸汽机的发明是机械动力的主要标志。正是在这个时候,蒸汽引擎首次装上了轮子,到了1825年,英国第一条国营铁路投入运营。当时的蒸汽动力与后来的电能和原子能具备的神奇力量的性质是相同的。1833年,英国数学家兼天文学家和发明家查尔斯·巴比杰提出了一个大胆的设想,他要利用蒸汽动力来进行数学计算,后来他真的设计出他声称能够进行计算甚至能够思考的机器,因此许多人将他视为实际生活中的弗兰肯斯坦博士。虽然他的设计方案从未变成实际的产品,但是巴比杰决不是个想入非非的空想家。在他于1871年去世之前,一直凭借他那最先进的逻辑思想和数学头脑,致力于他所谓的“分析机”的研究。巴比杰试图用这种机器使人们从重复性和烦琐的脑力劳动中解放出来,就像当时的新型机器使人们摆脱繁重的体力劳动一样。

布拉克的设备属于一种专用计算机,其功能非常有限。当时制造的大多数专用计算设备只能进行数字处理,不能进行逻辑处理。几十年前,特尔曼·霍勒利思设计了一台计算机,用于计算1890年美国人口普查的统计数字。他的公司后来被国际商业机器公司(IBM)兼并。到了1920年底,IBM通过向企业销售专用计算机而大发其财,这些计算机使企业的例行数字计算实现了自动化。当时IBM的机器还称不上是计算机,也不是布拉克制造的那种逻辑计算机,而只是体积庞大外观漂亮的计算器而已。

个人计算机是刚刚过去的20世纪70年代中期问世的,然而它的起源却可以追溯到50年代的巨型电子“计算装置”,甚至早在19世纪的小说中就提出了“会思考的”机器的说法。难道机器真的能够在程序的控制下进行思考吗?对于一两个世纪前的知识分子来说,这真是个大胆而令人惊叹的设想。

如果巴比杰对当时的权贵们采取迎合奉承的态度,或者拜伦的女儿是个腰缠万贯的富家女子,那么当时很可能出现一台规模庞大的蒸汽引擎计算机,在狄更斯笔下的伦敦喷云吐雾,使现实生活中的某些吝啬鬼的书籍相形见绌,或者与巴比杰的另一位著名朋友查尔斯·达尔文下国际象棋。可惜,正如玛丽·雪莱所预言的那样,电能将是实现会思考的机器的真正动力。

(本章未完)

由于公众害怕玛丽·雪莱在她的小说《弗兰肯斯坦》中提到的那种神奇技术会给人类带来什么不测,因此艾达认为应该向小说的读者说明巴比杰所说的分析机本身实际上并没有思维能力。这种机器只能按照人的指令进行工作。尽管如此,分析机已经非常接近现代意义上真正的计算机,而“按照人的指令进行工作”则与我们今天所谓的计算机编程的概念十分相似。

到了19世纪80年代,皮尔斯发现布尔代数学可以用来模拟电气开关电路。布尔逻辑学的真/假值与流经复杂电路的开/关电流完全吻合。换句话说,逻辑法则可以用电路来表示。因此,从理论上讲,可以制造电动计算机和逻辑计算机。1885年,皮尔斯的学生艾伦·马昆德实际上设计成功了能够进行简单逻辑运算的电动计算机,可惜没有制造成功。

美国麻省理工学院的克劳德·香农博士提出了一个理论,它说明了如何用电路来模拟布尔逻辑的方法。IBM公司的官员在这个理论的启发下,于20世纪30年代投资开发一种采用机电继电器的大型计算机。虽然他们后来放弃了这个开发计划,但是IBM公司的官员为哈佛大学教授霍华德·艾肯提供了50万美元,这在当时来说是一笔相当可观的费用,用于开发Mark I。Mark I是受巴比杰的分析机的启发而设计的一种计算设备。不过巴比杰设计的纯粹是机械式计算器,而Mark I则是一种机电式计算器,它的继电器用作开关部件,而继电器阵列则作为数字存储空间。计算器运行时噪声很大,继电器不停地接通和断开,发出噼噼啪啪的声响。当Mark I于1944年研制完成时,人们欢欣鼓舞,称它使科学幻想小说中的电脑变成了现实。但是当Mark I亮相时,艾肯却不承认IBM公司在该产品的研制工作中做出的贡献,为此IBM公司的官员很不高兴。更使IBM抱恨的是,在Mark I的研制工作开始之前,其他方面的技术取得了新的进展,从而使MarkⅠ在技术上已经过时了。

皮尔斯打算用来实现布尔代数运算的开关电路(也叫做开关装置、开关元件或中继元件,多个名字可以通用)是计算机的基本元件之一。这种装置具备的独特功能是它能够对信息进行操作,而不是对电流或机车进行操作。

加载中…