谁才是真正的“计算机之父”

2023-12-31 00:00:00魏新岩
电脑迷 2023年16期

【摘" 要】 计算机教科书上一般称美籍匈牙利科学家冯·诺依曼为“计算机之父”。从事IT行业的人们可能认为这是一个公认的定论,但如果再更多了解一些计算机发展历史,就会发现或许并非如此。比如十九世纪英国科学家巴贝奇通过发明差分机开启了计算机发展之路,因此有时也被称为计算机之父;二十世纪初著名的英国科学家阿兰·图灵因为在图灵机及人工智能领域的贡献,所以也被称为计算机之父;甚至鲜有人知的美国工程师阿塔纳索夫也被称为计算机之父。为何会有这么多拥有这一称号的科学家人选?不免让人感到困惑,共性在于这些人对计算机的发展都做出过重要贡献。文章通过简要回顾计算机发展历史上几位重要人物的经历和贡献,尝试讨论谁才能被称为真正的“计算机之父”。

【关键词】 计算机之父;冯·诺依曼;巴贝奇;阿兰·图灵;阿塔纳索夫

一、研究背景

众所周知,世界上公认的第一台电子计算机是1946年诞生于美国宾夕法尼亚大学的“ENIAC”。也正式开启了一个计算机及信息技术大发展的时代。

ENIAC的诞生,标志着一个计算机及信息技术大发展的时代正式开启,计算机也成为人类二十世纪科学技术发展进程中最杰出的成就之一。进入二十一世纪,新的世纪成为信息科技的时代,以计算机为代表的信息技术飞速发展,计算机成为现代信息社会发展的主要原动力,因此如何强调其重要性都不为过。但如此重要及伟大的“计算机”是如何被发明出来的,以及它真正的发明者是谁呢?

ENIAC的主要研发者是约翰·莫克利(John W. Mauchly)和普瑞斯珀·埃克特(J. Presper Eckert)。此外冯·诺依曼(John Von Neumann)也曾加入研发小组,并在其中也发挥了重要作用,提出存储程序、二进制、硬件结构等计算机基本原理。因此很多教科书上称冯·诺依曼为计算机之父。

如果深入了解计算机的发展历史,就会发现这一“称号”并不是那么确定。比如有些计算机书籍或网络上也称阿兰·图灵(Alan Mathison Turing)为计算机(科学)之父。另外,也有人将十九世纪英国数学家巴贝奇(Charles Babbage)以及二十世纪美国科学家阿塔纳索夫(John Vincent Atanasoff)称为计算机之父。

这么多“计算机之父”,到底谁才是真正的计算机之父?本研究先简要介绍以上几人对计算机领域做出的贡献,然后再就这一问题做出总结。

二、诸位“计算机之父”

(一)查尔斯·巴贝奇(1791—1871),英国数学家、发明家、机械工程师

巴贝奇在从事各种数学用表的制作工作中发现人工进行数据运算的繁重和易出错。因此设想用机械设备来代替人工运算。1822年,巴贝奇发表了一篇名为《论机械在天文及数学用表计算中的应用》的论文,并随后制作了一台简单的机械运算器样机——差分机。所谓“差分”法可以将多项式函数、对数函数或三角函数等高阶计算降阶,简化为加法,大大简化计算,进而可以使机械利用差分原理和加法来进行很多复杂的数学运算。

第一台差分机样机还比较原始,因此巴贝奇向英国政府申请拨款,希望能做出实用产品,彻底解决制表难题。但随后他遇到了很大的困难,因为差分机从设计绘图到机械零件加工,都需巴贝奇亲自动手完成。由于当时工业技术水平低下,满足不了制作各种零件的精密要求,因此十余年后差分机仍然没有完工。此时巴贝奇又进一步提出制造更高级的通用计算分析机的设想,其中分析机的构造包括存贮、运算室和控制部分、送入送出等部件,已经比较接近现代计算机的硬件结构。但遗憾的是,无论差分机和分析机最终都没制造成功。直到二十世纪九十年代,英国伦敦科学博物馆使用巴贝奇的设想和遗留的图纸,用机械技术建造完成了一台完整的差分机。它由8000多个部件组成,重5吨,长约335厘米。这台机器工作良好,证明了巴贝奇设想的可行性。

(二)阿兰·图灵(1912—1954),英国数学家、逻辑学家

1936年5月,图灵在英国权威数学杂志《伦敦数学协会会刊》上发表了一篇重要论文《论可计算数在判定问题中的应用》(On Computable Numbers,with an Application to the Entscheidungsproblem),并提出著名的“图灵机(Turing Machine)”的构想。这篇论文及图灵随后发表的数篇论文对此后计算机科学及人工智能的发展起到了重大的作用。

他后来提出了著名的“图灵测试”。随后发表的论文《计算机和智能》(Computing Machinery and Intelligence),对计算机及人工智能理论也产生了深远的影响。

由于其在计算机数理逻辑及人工智能理论领域的开创贡献,所以图灵也被很多人称为“计算机(科学)之父”或“人工智能之父”。

(三)约翰·阿塔纳索夫(1903—1995),美国电子工程师

1937年,时任美国爱荷华州立大学教授的阿塔纳索夫与其助手克里夫德·贝利(Clifford Berry),在经费极其有限,并且没有任何官方机构的支持下,开始设计并制造计算机,到1940年,他所设想的计算机原型已经基本制造成功。

这台被后世称为ABC的计算机(以阿塔纳索夫、贝利及计算机的首字母组成),主要部件由电子元件构成,另外还包括一些机械装置,电路系统中装有300个电子真空管执行数字计算与逻辑运算,使用电容器来进行数值存储,数据输入采用打孔读卡方法,还采用了二进位制。因此,ABC的设计中已经包含了现代计算机中几个最重要的基本概念,从这个角度来说它可以算是现代最早的电子计算机之一。

但遗憾的是ABC只是一台样机,如果要继续完善并得到大规模应用,必须得到更多资金及专利的支持,由于爱荷华大学当时并没有认识到ABC机蕴含的价值,并不支持阿塔纳索夫的工作,再加上其他一些原因,导致ABC机随后陷入停滞状态。

随后,美国参加二战,阿塔纳索夫放下自己的事业,转而投身军队为国效力,开始在海军兵工实验室工作。因此ABC机渐渐被他搁置遗忘,而爱荷华大学也将ABC机拆成零件后转为它用。

值得一提的是,阿塔纳索夫曾与莫克利(ENIAC的主要研制者之一)相识,并将自己对ABC机的设计和构想告诉过对方,据说他甚至把主要设计构造画在一张餐巾纸上交给了莫克利。此事应该对莫克利启发帮助极大,1943年,莫克利和埃克特在美国军方弹道实验室的拨款支持下,在宾夕法尼亚大学莫尔学院开始研制电子计算机,到1946年ENIAC研制成功。

面对ENIAC的巨大成功,阿塔纳索夫并没有去追究谁才是第一台电子计算机的发明者,其后创办了自己的公司,从事电子机械行业。直到1971年一家公司因为专利费问题与拥有莫克利专利的公司打起了官司,才让阿塔纳索夫和ABC机重新引发关注。

1973年10月19日,美国联邦法院在经过详细调查和135次开庭审理之后,认为ENIAC使用了ABC的基本设计思想和电路结构,因此撤销了莫克利和埃克特对于ENIAC的专利权。但遗憾的是因为已经过去很多年,而且当时震惊美国的水门事件曝光正酣,判决结果并没有被世人关注,以致到今天阿塔纳索夫的成就也没有得到应有的评价。

(四)冯·诺依曼(1903—1957),美籍匈牙利人,著名的数学及多领域科学家

1930年,冯·诺依曼受邀到美国普林斯顿大学任教,他前期主要从事数学理论研究,从1940年后,开始转向应用数学,因其深厚的数学功底,再加上惊人天赋,冯·诺依曼在量子力学、经济学、军事和计算机等众多领域做出了卓越贡献。

1944年,冯·诺依曼参加原子弹的研制工作,涉及极为繁重困难的计算工作,他开始对能代替人工的运算设备产生兴趣。这时他巧遇美国弹道实验室的军方负责人戈尔斯坦,其正参与ENIAC的研制工作。于是冯·诺依曼正好被戈尔斯坦介绍加入ENIAC研制组。

此时ENIAC项目的主要负责人是莫克利和埃克特,而且总体设计已经完成并进入硬件实现阶段,因此冯·诺依曼主要担任顾问角色。由于当时正在研制中的ENIAC使用外接电路方式设置程序,既费时又费力,经过思考和讨论后,他提出这样一个设想:程序能不能像数据一样,通过穿孔介质输入之后长期驻存在机器内部的存储器中呢?因此在ENIAC还未建成之际,研制一台可以存储程序的新计算机的申请就提交给了美国军方。这台新机器名叫电子离散变量自动计算机(Electronic Discrete Variable Automatic Computer),简称EDVAC。1945年6月,冯·诺依曼写了一篇长达101页,影响计算机发展走向的《EDVAC报告书的第一份草案》(First Draft of a Report on the EDVAC)。这份报告详述了EDVAC及现代计算机的基本设计思想、结构组成及工作原理。内容主要包括1.计算机使用二进制运算及表示数据;2.存储程序和程序控制原理;3.计算机硬件由运算器、控制器、存储器、输入和输出五大系统组成。

这份报告奠定了现代计算机的基本结构和工作原理,产生划时代的影响。是对当时计算机设计思想的高度总结和提炼。因此这种计算机结构后来被称为冯·诺依曼结构。

ENIAC诞生后,冯·诺依曼和莫克利等人继续着手研制EDVAC计算机。但遗憾的是,由于各种原因,导致EDVAC研发迟缓,直到1951年才制造完毕。而这时英国人已经率先利用冯·诺依曼的EDVAC报告于1949年研发成功世界上第一台具有存储程序功能的计算机EDSAC。此后基于冯·诺依曼结构的各种计算机被蓬勃研发和制造,世界也进入全新的电子计算机时代。

三、总结

以上四位科学家对计算机都做出了杰出的贡献。巴贝奇最早提出可计算数的概念并设计出差分机和分析机。但遗憾的是,由于十九世纪工业科技的落后,差分机和分析机当时并没有被制造成功。如果巴贝奇晚生一个世纪也许会取得更大的成就。这也说明研制计算机不光需要理论,更需要相应机械或电子技术的支持才能最终将设想变为实现。因此巴贝奇更应该被称为计算机(科学)先驱。

图灵在可计算数、计算机数理逻辑、机器(人工)智能等领域贡献巨大,为计算机数理逻辑及智能理论奠定了基础,如果没有他的贡献,也许计算机在此后很长一段时间,还是只能处理数字的简单计算工具,因此有人形象地称是图灵给予了计算机灵魂,而计算机科学领域的最高奖项——图灵奖,就是对图灵贡献的最大肯定。但图灵只是提出关于计算机的数理逻辑理论,图灵机也仅是设想模型。要研发出真正的电子计算机实际上还有很多重要工作要做,因此称图灵为计算机之父还是不够妥当,也许人工智能之父的称呼更适合图灵。

阿塔纳索夫和他的ABC机也是非常遗憾,如果当时能有机构支持阿塔纳索夫的工作以及他能继续坚持ABC计算机的研发。也许就将改写计算机的发展历史。但在他之前有巴贝奇这样的先驱,图灵等人也已经建立了计算机数理逻辑理论,阿塔纳索夫只需用数学及电子工程技术将计算机从理论和设想变为现实。而且在制造ABC机时,他的助手克里夫德·贝利的贡献也非常大。虽然后来的ENIAC借鉴了ABC机的设计思路和结构,但它们本身的结构都不太完善。在冯·诺依曼写出EDVAC报告后,现代电子计算机的基本结构才算真正设计完成。所以阿塔纳索夫也不能被称为计算机之父。

冯·诺依曼的贡献和才华有目共睹,但也必须指出他是以顾问身份参与ENIAC的项目,这一项目的主要实施者是莫克利和埃克特。冯·诺依曼最重要的贡献是写出EDVAC报告,正式提出存储程序概念及计算机应采用的工作原理及硬件结构。因此顾问身份和最后集大成者才是他真正的定位。

纵观以上历史,像计算机这样复杂精密、功能强大并对人类社会发展产生重大影响的发明绝非某个人凭一己之力就可以发明创造完成。从理论的构建到结构设计再到具体研发制造,并最终能制造成功,而且运行良好,这背后是无数科学家和工程师历经百年的智慧和努力的结晶。因此将单独的某一人称为计算机之父都有些欠妥,这些对计算机发展做出过贡献的全体科学家应该共同被称为真正的“计算机之父”。

参考文献:

[1] 张志群. 计算机先驱者巴贝奇[J]. 自然杂志,1999(02):116-121.

[2] 浦根祥,钱卉. 查尔斯·巴贝奇——计算机史上被误判的先驱者[J]. 自然辩证法通讯,1996(01):56-67.

[3] 李白薇. 图灵:计算机世纪的缔造者[J]. 中国科技奖励,2012(08):76-77.

[4] 胡宝洁,赵忠文,曾峦,等. 图灵机和图灵测试[J]. 电脑知识与技术,2006(23):132-133.

[5] 徐令予. 图灵:“登上”英国50英镑新钞的“人工智能之父”[J]. 金融博览,2021(06):18-19.

[6] 刘瑞挺. 被遗忘的计算机之父:约翰·阿塔诺索夫[J]. 计算机教育,2004(06):54-56.

[7] 袁传宽. 再谈谁是真正的“电子计算机之父”[J]. 程序员,2007(10):134-135.

[8] 戴吾三. 电子计算机之父冯·诺伊曼[J]. 科学,2016,68(03):54-58.

[9] 芦珊. 科学巨人约翰·冯·诺依曼[J]. 中国科技奖励,2017(04):77-78.