无处不在、无所不能的电脑,已历经了50多个春华秋实。50余年在人类的历史长河中只是一瞬间,电脑却彻底改变了我们的生活。回顾电脑发展的历史,并依此上溯它的起源,真令人惊叹沧海桑田的巨变;历数电脑史上的英雄人物和跌宕起伏的发明故事,将给后人留下了长久的思索和启迪。请读者随着我们的史话倒转时空,从电脑最初的源头说起。
谁都知道,电脑的学名叫做电子计算机。以人类发明这种机器的初衷,它的始祖应该是计算工具。英语里“Calculus”(计算)一词来源于拉丁语,既有“算法”的含义,也有肾脏或胆囊里的“结石”的意思。远古的人们用石头来计算捕获的猎物,石头就是他们的计算工具。著名科普作家阿西莫夫说,人类最早的计算工具是手指,英语单词“Dight”既表示“手指”又表示“整数数字”;而中国古人常用“结绳”来帮助记事,“结绳”当然也可以充当计算工具。石头、手指、绳子……,这些都是古人用过的“计算机”。
不知何时,许多国家的人都不约而同想到用“筹码”来改进工具,其中要数中国的算筹最有名气。商周时代问世的算筹,实际上是一种竹制、木制或骨制的小棍。古人在地面或盘子里反复摆弄这些小棍,通过移动来进行计算,从此出现了“运筹”这个词,运筹就是计算,后来才派生出“筹”的词义。中国古代科学家祖冲之最先算出了圆周率小数点后的第6位,使用的工具正是算筹,这个结果即使用笔算也很不容易求得。
欧洲人发明的算筹与中国不尽相同,他们的算筹是根据“格子乘法”的原理制成。例如要计算1248×456,可以先画一个矩形,然后把它分成3×2个小格子,在小格子边依次写下乘数、被乘数的各位数字,再用对角线把小格子一分为二,分别记录上述各位数字相应乘积的十位数与个位数。把这些乘积由右到左,沿斜线方向相加,最后就得到乘积。1617年,英国数学家纳皮尔把格子乘法表中可能出现的结果,印刻在一些狭长条的算筹上,利用算筹的摆放来进行乘、除或其他运算。纳皮尔算筹在很长一段时间里,是欧洲人主要的计算工具。算筹在使用中,一旦遇到复杂运算常弄得繁杂混乱,让人感到不便,于是中国人又发明了一种新式的“计算机”。
著名作家谢尔顿在他的小说《假如明天来临》里讲过一个故事:骗子杰夫向经销商兜售一种袖珍计算机,说它“价格低廉,绝无故障,节约能源,十年中无需任何保养”。当商人打开包装盒一看,这台“计算机”原来是一把来自中国的算盘。世界文明的四大发源地──黄河流域、印度河流域、尼罗河流域和幼发拉底河流域──先后都出现过不同形式的算盘,只有中国的珠算盘一直沿用至今。珠算盘最早可能萌芽于汉代,定型于南北朝。它利用进位制记数,通过拨动算珠进行运算:上珠每珠当五,下珠每珠当一,每一档可当作一个数位。打算盘必须记住一套口诀,口诀相当于算盘的“软件”。算盘本身还可以存储数字,使用起来的确很方便,它帮助中国古代数学家取得了不少重大的科技成果,在人类计算工具史上具有重要的地位。
15世纪以后,随着天文、航海的发展,计算工作日趋繁重,迫切需要探求新的计算方法并改进计算工具。1630年,英国数学家奥特雷德使用当时流行的对数刻度尺做乘法运算,突然萌生了一个念头:若采用两根相互滑动的对数刻度尺,不就省得用两脚规度量长度吗?他的这个设想导致了“机械化”计算尺的诞生。奥特雷德是理论数学家,对这个小小的计算尺并不在意,也没有打算让它流传于世,此后二百年,他的发明未被实际运用。18世纪末,以发明蒸汽机闻名于世的瓦特,成功地制出了第一把名副其实的计算尺。瓦特原来就是一位仪表匠,他的蒸汽机工厂投产后,需要迅速计算蒸汽机的功率和气缸体积。瓦特设计的计算尺,在尺座上多了一个滑标,用来“存储”计算的中间结果,这种滑标很长时间一直被后人所沿用。
1850年以后,对数计算尺迅速发展,成了工程师们必不可少的随身携带的“计算机”,直到20世纪五、六十年代,它仍然是代表工科大学生身份的一种标志。
凝聚着许许多多科学家和能工巧匠智慧的早期计算工具,在不同的历史阶段发挥过巨大作用,但也将随着科学发展而逐渐消亡,最终完成它们的历史使命。
第一台真正的计算机是著名科学家帕斯卡(B.Pascal)发明的机械计算机。
帕斯卡1623年出生在法国一位数学家家庭,他三岁丧母,由担任着税务官的父亲拉扯他长大成人。从小,他就显示出对科学研究浓厚的兴趣。
少年帕斯卡对他的父亲一往情深,他每天都看着年迈的父亲费力地计算税率税款,很想帮助做点事,可又怕父亲不放心。于是,未来的科学家想到了为父亲制做一台可以计算税款的机器。19岁那年,他发明了人类有史以来第一台机械计算机。
帕斯卡的计算机是一种系列齿轮组成的装置,外形像一个长方盒子,用儿童玩具那种钥匙旋紧发条后才能转动,只能够做加法和减法。然而,即使只做加法,也有个“逢十进一”的进位问题。聪明的帕斯卡采用了一种小爪子式的棘轮装置。当定位齿轮朝9转动时,棘爪便逐渐升高;一旦齿轮转到0,棘爪就“咔嚓”一声跌落下来,推动十位数的齿轮前进一档。
帕斯卡发明成功后,一连制作了50台这种被人称为“帕斯卡加法器”的计算机,至少现在还有5台保存着。比如,在法国巴黎工艺学校、英国伦敦科学博物馆都可以看到帕斯卡计算机原型。据说在中国的故宫博物院,也保存着两台铜制的复制品,是当年外国人送给慈僖太后的礼品,“老佛爷”哪里懂得它的奥妙,只把它当成了西方的洋玩具,藏在深宫里面。
帕斯卡是真正的天才,他在诸多领域内都有建树。后人在介绍他时,说他是数学家、物理学家、哲学家、流体动力学家和概率论的创始人。凡是学过物理的人都知道一个关于液体压强性质的“帕斯卡定律”,这个定律就是他的伟大发现并以他的名字命名的。他甚至还是文学家,其文笔优美的散文在法国极负盛名。可惜,长期从事艰苦的研究损害了他的健康,1662年英年早逝,死时年仅39岁。他留给了世人一句至理名言:“人好比是脆弱的芦苇,但是他又是有思想的芦苇。”
全世界“有思想的芦苇”,尤其是计算机领域的后来者,都不会忘记帕斯卡在浑沌中点燃的亮光。1971年发明的一种程序设计语言──PASCAL语言,就是为了纪念这位先驱,使帕斯卡的英名长留在电脑时代里。
帕斯卡逝世后不久,与法兰西毗邻的德国莱茵河畔,有位英俊的年轻人正挑灯夜读。黎明时分,青年人站起身,揉了一下疲乏的腰部,脸上流露出会心的微笑,一个朦胧的设想已酝酿成熟。虽然在帕斯卡发明加法器的时候,他尚未出世,但这篇由帕斯卡亲自撰写的关于加法计算机的论文,却使他似醍醐灌顶,勾起强烈的发明欲。他就是德国大数学家、被《不列颠百科全书》称为“西方文明最伟大的人物之一”的莱布尼茨(G.Leibnitz)。
莱布尼茨早年历经坎坷。当幸运之神降临之时,他获得了一次出使法国的机会。帕斯卡的故乡张开臂膀接纳他,为他实现计算机器的夙愿创造了契机。在巴黎,他聘请到一些著名机械专家和能工巧匠协助工作,终于在1674年造出一台更完美的机械计算机。
莱布尼茨发明的新型计算机约有1米长,内部安装了一系列齿轮机构,除了体积较大之外,基本原理继承于帕斯卡。不过,莱布尼茨技高一筹,他为计算机增添了一种名叫“步进轮”的装置。步进轮是一个有9个齿的长圆柱体,9个齿依次分布于圆柱表面;旁边另有个小齿轮可以沿着轴向移动,以便逐次与步进轮啮合。每当小齿轮转动一圈,步进轮可根据它与小齿轮啮合的齿数,分别转动1/10、2/10圈……,直到9/10圈,这样一来,它就能够连续重复地做加法。
稍熟悉电脑程序设计的人都知道,连续重复计算加法就是现代计算机做乘除运算采用的办法。莱布尼茨的计算机,加、减、乘、除四则运算一应俱全,也给其后风靡一时的手摇计算机铺平了道路。
不久,因独立发明微积分而与牛顿齐名的莱布尼茨,又为计算机提出了“二进制”数的设计思路。有人说,他的想法来自于东方中国。
大约在公元1700年左右某天,友人送给他一幅从中国带来图画,名称叫做“八卦”,是宋朝人邵雍所摹绘的一张“易图”。莱布尼茨用放大镜仔细观察八卦的每一卦象,发现它们都由阳(—)和阴(--)两种符号组合而成。他挠有兴趣地把8种卦象颠来倒去排列组合,脑海中突然火花一闪──这不就是很有规律的二进制数字吗?若认为阳(—)是“1”,阴(--)是“0”,八卦恰好组成了二进制000到111共8个基本序数。正是在中国人睿智的启迪下,莱布尼茨最终悟出了二进制数之真谛。虽然莱布尼茨设计的计算机用的还是十进制,但他率先系统提出了二进制数的运算法则,直到今天,二进制数仍然左右着现代电脑的高速运算。
帕斯卡的计算机经由莱布尼茨的改进之后,人们又给它装上电动机以驱动机器工作,成为名符其实的“电动计算机”,并且一直使用到本世纪20年代才退出舞台。尽管帕斯卡与莱布尼茨的发明还不是现代意义上的计算机,但它们毕竟昭示着人类计算机史里的第一抹曙光。
要让机器听人类的话,按人类的意愿去计算,就要实现人与机器之间的对话,或者说,要把人类的思想传送给机器,让机器按人的意志自动执行。
说来也怪,实现人与机器对话的始作俑者却不是研制计算机的那些前辈,而是与计算机发明毫不相干的两位法国纺织机械师。他们先后发明了一种指挥机器工作的“程序”,把思想直接“注入”到了提花编织机的针尖上。
顾名思义,提花编织机具有升降纱线的提花装置,是一种能使绸布编织出图案花纹的织布机器。
应该是,提花编织机最早出现在中国。在我国出土的战国时代墓葬物品中,就有许多用彩色丝线编织的漂亮花布。据史书记载,西汉年间,钜鹿县纺织工匠陈宝光的妻子,能熟练地掌握提花机操作技术,她的机器配置了120根经线,平均60天即可织成一匹花布,每匹价值万钱。明朝刻印的《天工开物》一书中,还赫然地印着一幅提花机的示意图。可以想象,当欧洲的王公贵族对从“丝绸之路”传入的美丽绸缎赞叹不已时,中国的提花机也必定会沿着“丝绸之路”传入欧洲。
不过,用当时的编织机编织图案相当费事。所有的绸布都是用经线(纵向线)和纬线(横向线)编织而成。若要织出花样,织工们必须细心地按照预先设计的图案,在适当位置“提”起一部分经线,以便让滑梭牵引着不同颜色的纬线通过。机器当然不可能自己“想”到该在何处提线,只能靠人手“提”起一根又一根经线,不厌其烦地重复这种操作。
1725年,法国纺织机械师布乔(B.Bouchon)突发奇想,想出了一个“穿孔纸带”的绝妙主意。布乔首先设法用一排编织针控制所有的经线运动,然后取来一卷纸带,根据图案打出一排排小孔,并把它压在编织针上。启动机器后,正对着小孔的编织针能穿过去钩起经线,其他的针则被纸带挡住不动。这样一来,编织针就自动按照预先设计的图案去挑选经线,布乔的“思想”于是“传递”给了编织机,而编织图案的“程序”也就“储存”在穿孔纸带的小孔之中。真正成功的改进是在80年后,另一位法国机械师杰卡德(J.Jacquard),大约在1805年完成了“自动提花编织机”的设计制作。
那是举世瞩目的法国大革命的年代──攻打巴士底狱,推翻封建王朝,武装保卫巴黎,市民们高唱着“马赛曲”,纷纷走上街头,革命风暴如火如荼。虽然杰卡德在1790年就基本形成了他的提花机设计构想,但为了参加革命,他无暇顾及发明创造,也扛起来福枪,投身到里昂保卫战的行列里。直到19世纪到来之后,杰卡德的机器才得以组装完成。
杰卡德为他的提花机增加了一种装置,能够同时操纵1200个编织针,控制图案的穿孔纸带后来也换成了穿孔卡片。据说,杰卡德编织机面世后仅25年,考文垂附近的乡村里就有了600台,在老式蒸气机噗嗤噗嗤的伴奏下,把穿孔卡片上的图案变成一匹匹漂亮的花绸布。纺织工人最初强烈反对这架自动化的新鲜玩意的到来,因为害怕机器会抢去他们的饭碗,使他们失去工作,但因为它优越的性能,终于被人们普遍接受。1812年,仅在法国已经装配了万余台,并通过英国传遍了西方世界,杰卡德也因此而被受予了荣誉军团十字勋章和金质奖章。
杰卡德提花编织机奏响了19世纪机器自动化的序曲。在伦敦出版的《不列颠百科全书》和中国出版的《英汉科技词汇大全》两部书中,“JACQUARD”(杰卡德)一词的词条下,英语和汉语的意思居然都是“提花机”,可见,杰卡德的名字已经与提花机融为了一体。杰卡德提花机的原理,即使到了电脑时代的今天,依然没有更大的改动,街头巷尾小作坊里使用的手工绒线编织机,其基本结构仍与杰卡德编织机大体相似。
此外,杰卡德编织机“千疮百孔”的穿孔卡片,不仅让机器编织出绚丽多彩的图案,而且意味着程序控制思想的萌芽,穿孔纸带和穿孔卡片也广泛用于早期电脑以存储程序和数据。或许,我们现在把“程序设计”俗称为“编程序”,就引申自编织机的“编织花布”的词义。
今天出版的许多计算机书籍扉页里,都登载着巴贝奇(C.Babbage)的照片:宽阔的额,狭长的嘴,锐利的目光显得有些愤世嫉俗,坚定的但绝非缺乏幽默的外貌,给人以一个极富深邃思想的学者形象。
巴贝奇是一位富有的银行家的儿子,1792年出生在英格兰西南部的托特纳斯,后来继承了相当丰厚的遗产,但他把金钱都用于了科学研究。童年时代的巴贝奇显示出极高的数学天赋,考入剑桥大学后,他发现自己掌握的代数知识甚至超过了教师。毕业留校,24岁的年青人荣幸受聘担任剑桥大学“路卡辛讲座”的数学教授。这是一个很少有人能够获得的殊荣,牛顿的老师巴罗是第一名,牛顿是第二名。在教学之余,巴贝奇完成了大量发明创造,如运用运筹学理论率先提出“一便士邮资”制度,发明了供火车使用的速度计和排障器等等。假若巴贝奇继续在数学理论和科技发明领域耕耘,他本来是可以走上鲜花铺就的坦途。然而,这位旷世奇才却选择了一条无人敢于攀登的崎岖险路。
事情还得从法国讲起。18世纪末,法兰西发起了一项宏大的计算工程──人工编制《数学用表》,这在没有先进计算工具的当时,是件极其艰巨的工作。法国数学界调集大批数学家,组成了人工手算的流水线,算得天昏地暗,才完成了17卷大部头书稿。即便如此,计算出的数学用表仍然存在大量错误。据说有一天,巴贝奇与著名的天文学家赫舍尔凑在一起,对两大部头的天文数表评头论足,翻一页就是一个错,翻两页就有好几处。面对错误百出的数学表,巴贝奇目瞪口呆,他甚至喊出声来:“天哪,这些计算错误已经充斥弥漫了整个宇宙!”
这件事也许就是巴贝奇萌生研制计算机构想的起因。巴贝奇在他的自传《一个哲学家的生命历程》里,写到了大约发生在1812年的一件事:“有一天晚上,我坐在剑桥大学的分析学会办公室里,神志恍惚地低头看着面前打开的一张对数表。一位会员走进屋来,瞧见我的样子,忙喊道:‘喂!你梦见什么啦?’我指着对数表回答说:‘我正在考虑这些表也许能用机器来计算!’”巴贝奇的第一个目标是制作一台“差分机”。所谓“差分”的含义,是把函数表的复杂算式转化为差分运算,用简单的加法代替平方运算。那一年,刚满20岁的巴贝奇从法国人杰卡德发明的提花编织机上获得了灵感,差分机设计闪烁出了程序控制的灵光──它能够按照设计者的旨意,自动处理不同函数的计算过程。
巴贝奇耗费了整整十年光阴,于1822年完成了第一台差分机,它可以处理3个不同的5位数,计算精度达到6位小数,当即就演算出好几种函数表。由于当时工业技术水平极低,第一台差分机从设计绘图到机械零件加工,都是巴贝奇亲自动手完成。当他看着自己的机器制作出准确无误的《数学用表》,高兴地对人讲:“哪怕我的机器出了故障,比如齿轮被卡住不能动,那也毫无关系。你看,每个轮子上都有数字标记,它不会欺骗任何人。”以后实际运用证明,这种机器非常适合于编制航海和天文方面的数学用表。
成功的喜悦激励着巴贝奇,他连夜奋笔上书皇家学会,要求政府资助他建造第二台运算精度为20位的大型差分机。英国政府看到巴贝奇的研究有利可图,破天荒地与科学家签订了第一个合同,财政部慷慨地为这台大型差分机提供出1.7万英镑的资助。巴贝奇自己也贴进去1.3万英镑巨款,用以弥补研制经费的不足。在当年,这笔款项的数额无异于天文数字──有资料介绍说,1831年约翰·布尔制造一台蒸汽机车的费用才784英磅。
然而,第二台差分机在机械制造工厂里触上了“暗礁”。
第二台差分机大约有25000个零件,主要零件的误差不得超过每英寸千分之一,即使用现在的加工设备和技术,要想造出这种高精度的机械也绝非易事。巴贝奇把差分机交给了英国最著名的机械工程师约瑟夫·克莱门特所属的工厂制造,但工程进度十分缓慢。设计师心急火燎,从剑桥到工厂,从工厂到剑桥,一天几个来回。他把图纸改了又改,让工人把零件重做一遍又一遍。年复一年,日复一日,直到又一个10年过去后,巴贝奇依然望着那些不能运转的机器发愁,全部零件亦只完成不足一半数量。参加试验的同事们再也坚持不下去,纷纷离他而去。巴贝奇独自苦苦支撑了第三个10年,终于感到无力回天。
那天清晨,巴贝奇走进车间,偌大的作业场空无一人,只剩下满地的滑车和齿轮,四处一片狼藉。他呆立在尚未完工的机器旁,深深地叹了口气。在痛苦的煎熬中,他无计可施,只得把全部设计图纸和已完成的部分零件送进伦敦皇家学院博物馆供人观赏。1842年,在巴贝奇的一生中是极不平常的一年。英国政府宣布断绝对他的一切资助,连科学界的友人都用一种怪异的目光看着他。英国首相讥讽道:“这部机器的唯一用途,就是花掉大笔金钱!”同行们讥笑他是“愚笨的巴贝奇”。皇家学院的权威人士,包括著名天文学家艾瑞等人,都公开宣称他的差分机“毫无任何价值”……
就在痛苦艰难的时刻,孤独苦闷的巴贝奇意外地收到一封来信,写信人不仅对他表示理解而且还希望与他共同工作。娟秀字体的签名,表明了她不凡的身份──伯爵夫人。
接到信函后不久,巴贝奇实验室门口走进来一位年轻的女士。她身披素雅的斗蓬,鬓角上斜插一朵白色的康乃馨,显得那么典雅端庄。巴贝奇一时愣在那里,他与这位女士似曾相识,又想不起曾在何处邂逅。女士落落大方地作了自我介绍,正是那位写信人。
“您还记得我吗?”女士低声问道,“十多年前,您还给我讲过差分机原理。”看到巴贝奇迷惑的眼神,她又笑着补充说:“您说我像野人见到了望远镜。”巴贝奇恍然大悟,想起已经十分遥远的往事。面前这位女士和那个小女孩之间,依稀还有几分相似。原来,伯爵夫人本名叫阿达·奥古斯塔(AdaAugusta),是英国著名诗人拜伦的独生女。她比巴贝奇的年龄小20多岁,1815年出生。阿达自小命运多舛,来到人世的第二年,父亲拜伦因性格不合与她的母亲离异,从此别离英国。可能是从未得到过父爱的缘由,小阿达没有继承到父亲诗一般的浪漫热情,却继承了母亲的数学才能和毅力。
还是在阿达的少女时代,母亲的一位朋友领着她们去参观巴贝奇的差分机。其他女孩子围着差分机叽叽喳喳乱发议论,摸不着头脑。只有阿达看得非常仔细,她十分理解并且深知巴贝奇这项发明的重大意义。或许是这个小女孩特殊的气质,在巴贝奇的记忆里打下了较深的印记。他赶紧请阿达入座,并欣然同意与这位小有名气的数学才女共同研制新的计算机器。
就这样,在阿达27岁时,她成为巴贝奇科学研究上的合作伙伴,迷上这项常人不可理喻的“怪诞”研究。其时,她已经成了家,丈夫是洛甫雷斯伯爵。按照英国的习俗,许多资料在介绍里都把她称为“洛甫雷斯伯爵夫人”。
30年的困难和挫折并没有使巴贝奇屈服,阿达的友情援助更坚定了他的决心。还在大型差分机进军受挫的1834年,巴贝奇就已经提出了一项新的更大胆的设计。他最后冲刺的目标,不是仅仅能够制表的差分机,而是一种通用的数学计算机。巴贝奇把这种新的设计叫做“分析机”,它能够自动解算有100个变量的复杂算题,每个数可达25位,速度可达每秒钟运算一次。
今天我们再回首看看巴贝奇的设计,分析机的思想仍然闪烁着天才的光芒。
由于巴贝奇晚年因喉疾几乎不能说话,介绍分析机的文字主要由阿达替他完成。阿达在一篇文章里介绍说:“这台机器不论在可能完成的计算范围、简便程度以及可靠性与精确度方面,或者是计算时完全不用人参与这方面,都超过了以前的机器。”巴贝奇把分析机设计得那样精巧,他打算用蒸汽机为动力,驱动大量的齿轮机构运转。巴贝奇的分析机大体上有三大部分:其一是齿轮式的“存贮库”,巴贝奇称它为“仓库”(Store),每个齿轮可贮存10个数,齿轮组成的阵列总共能够储存1000个50位数。分析机的第二个部件是所谓“运算室”,它被巴贝奇命名为“作坊”(Mill),其基本原理与帕斯卡的转轮相似,用齿轮间的啮合、旋转、平移等方式进行数字运算。为了加快运算速度,他改进了进位装置,使得50位数加50位数的运算可完成于一次转轮之中。第三部分巴贝奇没有为它具体命名,其功能是以杰卡德穿孔卡中的“0”和“1”来控制运算操作的顺序,类似于电脑里的控制器。他甚至还考虑到如何使这台机器处理依条件转移的动作,比如,第一步运算结果若是“1”,就接着做乘法,若是“0”就进行除法运算。此外,巴贝奇也构思了送入和取出数据的机构,以及在“仓库”和“作坊”之间不断往返运输数据的部件。
阿达“心有灵犀一点通”,她非常准确地评价道:“分析机‘编织’的代数模式同杰卡德织布机编织的花叶完全一样”。于是,为分析机编制一批函数计算程序的重担,落到了数学才女的肩头。阿达开天辟地第一次为计算机编出了程序,其中包括计算三角函数的程序、级数相乘程序、伯努利函数程序等等。阿达编制的这些程序,即使到了今天,电脑软件界的后辈仍然不敢轻易改动一条指令。人们公认她是世界上第一位软件工程师。众所周知,美国国防部据说是花了250亿美元和10年的光阴,把它所需要软件的全部功能混合在一种计算机语言中,希望它能成为军方数千种电脑的标准。1981年,这种语言被正式命名为ADA(阿达)语言,使阿达的英名流传至今。
不过,以上讲的都是后话,殊不知巴贝奇和阿达当年处在怎样痛苦的水深火热之中!由于得不到任何资助,巴贝奇为把分析机的图纸变成现实,耗尽了自己全部财产,弄得一贫如洗。他只好暂时放下手头的活,和阿达商量设法赚一些钱,如制作什么国际象棋玩具,什么赛马游戏机等等。为筹措科研经费,他们不得不“下海”搞“创收”。最后,两人陷入了惶惶不可终日的窘境。阿达忍痛两次把丈夫家中祖传的珍宝送进当铺,以维持日常开销,而这些财宝又两次被她母亲出资赎了回来。贫困交加,无休止的脑力劳动,使阿达的健康状况急剧恶化。1852年,怀着对分析机成功的美好梦想,软件才女英年早逝,死时年仅36岁。阿达去世后,巴贝奇又默默地独自坚持了近20年。晚年的他已经不能准确地发音,甚至不能有条理地表达自己的意思,但是他仍然百折不挠地坚持工作。1871年,为计算机事业贡献毕生精力的先驱者巴贝奇,终于满怀着对分析机无言的悲怅,孤独地离开了人世。有人把他的大脑用盐渍着保存起来,想经过若干年后,有更先进技术来研究他大脑保存的精神。
分析机终于没能造出来,巴贝奇和阿达失败了。巴贝奇和阿达的失败是因为他们看得太远,分析机的设想超出了他们所处时代至少一个世纪!社会发展的需求和科学技术发展的可能,使得他们注定要成为的悲剧人物。尽管如此,巴贝奇和阿达为电脑科学留下了一份极其珍贵的精神遗产,包括30种不同设计方案,近2000张组装图和50000张零件图……,更包括那种在逆境中自强不息,为追求理想奋不顾身的拼搏精神。
巴贝奇巨星陨落后,世人已逐渐将他淡忘,20世纪已经来临。计算机的历史等待着,等待着巴贝奇式的人物再世,等待着人类划时代的壮举。
大约在1936年,美国青年霍德华·艾肯(H.Aiken)来哈佛大学攻读物理学博士学位。恰好在世纪之交来到人世的艾肯,属于大器晚成的科学家。由于家庭贫困,他不得不以半工半读的方式艰难地读完高中。大学期间,也是一边工作,一边刻苦学习,直到毕业后才谋到一份工程师的工作。36岁那年,他毅然辞去收入丰厚的职务,重新走进大学校门。由于博士论文的研究涉及到空间电荷的传导理论,需要求解非常复杂的非线性微分方程,在进行繁琐的手工计算之余,艾肯很想发明一种机器代替人工求解的方法,幻想能有一台计算机帮助他解决数学难题。
三年之后,正如莱布尼茨在书里“找到”帕斯卡一样,艾肯也是在图书馆里“发现”的巴贝奇和阿达。巴贝奇和阿达的论文,令年轻人心摇旌动。70多年过去后,巴贝奇仿佛还在对他娓娓而谈:“任何人如果不接受我失败的教训,还仍然下决心去研制一台把数学分析的全部工作都包括在内的机器的话,我不怕把自己的名誉交给他去作出应有的评价,因为只有他才完全了解我工作的性质及其成果的价值”。以艾肯所处时代的科技水平,也许已经能够完成巴贝奇未竞的事业,造出通用计算机。为此,他写了一篇《自动计算机的设想》的建议书,提出要用机电方式,而不是用纯机械方法来构造新的“分析机”。然而,正在求学的读书人根本没有可能筹措到那么大的一笔经费。
取得博士学位的艾肯进入了美国海军军械局。一名小小的中尉,他仍然没有钱。“金钱不是万能的”,但是,对于艾肯实现计算机梦想来说,“没有钱却是万万不能的”,否则只会重蹈巴贝奇和阿达的复辙。
年轻的海军中尉想到了制表机行业的IBM公司。
艾肯从他一位老师口中得知IBM董事长沃森的大名,他的老师此时正在一所由IBM出资创办的“哥伦比亚大学统计局”里任职,非常乐意为学生写了份推荐信。艾肯连续通宵达旦地准备材料,拟好了一份详细的可行性报告,直接跑去找沃森。他听老师讲,沃森的作风从来就是独断专行,不设法说服此人,研制计算机的计划一准泡汤。
IBM的总部座落在一幢古色古香的建设物里。沃森坐在宽大的写字台后,一言不发听艾肯陈述。在他的背后,是整整齐齐摆满各种书籍的大书柜,书柜的上方贴着只有一个单词的格言──思考(THINK),这是沃森最为推崇的行动准则。
艾肯说完了该说的话,忐忑不安地望着对面这位爱好“思考”的企业家。
“至少需要多少钱?”沃森开口询问。“恐怕要投入数以万计吧”,艾肯喃喃地回答,“不过……”
沃森摆了摆手,打断了艾肯的话头,拿起笔来,在报告上划了几下。
艾肯心里一紧:“没戏了!”出于礼貌,他还是恭敬地用双手接过那张纸,随即低头一瞅,顿时喜上眉稍──沃森的大笔一挥,批给了计算机100万美元!
有了IBM作坚强后盾,新的计算机研制工作在哈佛物理楼后的一座红砖房里开了场,艾肯把它取名为“马克1号”(MarkⅠ),又叫做“自动序列受控计算机”。IBM又派来莱克、德菲和汉密尔顿等工程师组成攻关小组,财源充足,兵强马壮。比起巴贝奇和阿达,艾肯的境况实在要幸运得多。IBM也因此从生产制表机、肉铺磅秤、咖啡碾磨机等乱七八糟玩意的行业里,正式跨进了计算机的“领地”。
艾肯设计的马克1号已经是一种电动的机器,它借助电流进行运算,最关键的部件,用的是普通电话上的继电器。马克1号上大约安装了3000个继电器,每一个都有由弹簧支撑着的小铁棒,通过电磁铁的吸引上下运动。吸合则接通电路,代表“1”;释放则断开电路,代表“0”。继电器“开关”能在大约1/100秒的时间内接通或是断开电流,当然比巴贝奇的齿轮先进得多。
为马克1号编制计算程序的也是一位女数学家格雷斯·霍波(G.Hopper)。这位声名遐迩的数学博士,1944年参加到哈佛大学计算机研究工作,她说:“我成了世界上第一台大型计算机MarkⅠ的第三名程序员。”霍波博士后来还为第一台储存程序的商业电子计算机UNIVAC写过程序,又率先研制成功第一个编译程序A-O和计算机商用语言COBOL,被公认是计算机语言领域的带头人。有一天,她在调试程序时出现了故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波恢谐地把程序故障统称为“臭虫”(bug),而这一奇怪的“称呼”,后来成为计算机领域的专业行话,如DOS系统中的调试程序,程序名称就叫DEBUG。
1944年2月,马克1号计算机在哈佛大学正式运行。从外表看,它的外壳用钢和玻璃制成,长约15米,高约2.4米,自重达到31.5吨,是个像恐龙般巨大身材的庞然大物。据说,艾肯和他的同事们,为它装备了15万个元件和长达800公里的电线。这台机器能以令当时人们吃惊的速度工作──每分钟进行200次以上的运算。它可以作23位数加23位数的加法,一次仅需要0.3秒;而进行同样位数的乘法,则需要6秒多的时间。只是它运行起来响声不绝于耳,有的参观者说:“就象是挤满了一屋子编织绒线活的妇女”,也许你会联想到,马克1号计算机也与杰卡德编织机有天然的联系。马克1号代表着自帕斯卡以来,人类所制造的机械计算机或电动计算机之顶尖水平,当时就被用来计算原子核裂变过程。它以后运行了15年,编出的数学用表我们至今还在使用。1946年,艾肯和霍波联袂发表文章说,这台机器能自动实现人们预先选定的系列运算,甚至可以求解微分方程。
马克1号终于实现了巴贝奇的夙愿。事隔多年后,已经担任大学教授的艾肯谈起巴贝奇其人其事来,仍然惊叹不已,他曾感慨地说,如果巴贝奇晚生75年,我就会失业。但是,马克1号是早期计算机的最后代表,从它投入运行的那一刻开始就已经过时,因为此时此刻,人类社会已经跨进了电子的时代。