本文讲计算机的诞生过程,我尽量把内容故事化使之不那么枯燥。
20世纪30年代中期,美国的艾奥瓦州立大学有一位数学系和物理系教授叫约翰·文森特·阿塔纳索夫(John Vincent Atanasoff),由于阿塔那索夫在教学上常常需要进行大量复杂枯燥的计算,而当时的最快的机械计算机运算还是太慢且误差大。于是阿塔那索夫决定研制电子计算机来改善计算工具。从1937年,阿塔那索夫便开始了他的设计,在他的设计当中,引入了三个关键性的设想:
1.使用二进制数代替十进制表示数据
2.使用电子器件取代机械部件进行计算操作
3.机器中要有能保存数的“存储器”。
这些设想的在他接下来两年的实验中渐渐变得可能。但要真正的实现这一目标需要研究基金,于是他向大学申请研究基金。但这一项目并不被看好。在1939年春,大学研究理事仅给予650美元的费用,其中200元用于买材料,另450美元雇了一个当时的研究生叫克利福特·贝瑞(Clifford Berry) 。
于是阿塔那索夫和贝瑞开始在艾奥瓦州立大学的一间地下室开始了他们的研发工作。幸运的是贝瑞是个天才工程师,他在后来的研究中为阿塔那索夫解决了很多问题。
机器于1941年基本研制成功,根据他们两人的名字命名为阿塔纳索夫-贝瑞计算机(Atanasoff-Berry Computer,简称ABC)。ABC有300个电子管,能做加法和减法运算,以鼓状电容器来存储300个数字。机器重320千克,大小像一张桌子那么大。它的运算速度比原来的机械计算器快得多,而且ABC能做线性代数方程的计算。
但是此时ABC并没有真正完成,还有一些问题需要解决,例如如果打孔机发生故障,ABC就会失控得出错误答案。 所以ABC并没有投入使用,而且艾奥瓦大学地理位置比较偏僻,当时这一发明并没有受到科学界的关注。到了1942年,日本袭击了珍珠港,美国在二战的身份因此由中立国家变成了参战国家。许多工程师都纷纷加入到战争的科研工作当中。阿塔那索夫去了华盛顿一个海军军械实验室工作,研究炸弹引信。 不久后贝瑞也前往洛杉矶参加一项国防承包工程。ABC的研制工作从此中断而且阿塔那索夫和贝瑞也从此失去了联系。因此ABC的科研成果一直不被世人得知。甚至连他们两人离开时留在地下室的两台ABC样本机器也在二战时因为物品短缺而被拆除。这就导致了后来在1946年诞生的ENIAC一直被误认为是第一台电子计算机。
后来艾奥瓦州立大学又仿造了一台abc,放在达勒姆中心1层。
1940年12月,阿塔纳索夫去费城参加美国科学进步协会(AAAS)年会。他听了宾夕法尼亚大学的物理教授莫齐利的演讲。莫齐利认为电子学可以为绝望的数据处理问题提供答案,只是还不知道该如何做。会后,阿塔纳索夫找到莫齐利,告诉他自己已经建造了这样的机器,莫齐利大感兴趣。后来阿塔纳索夫带莫齐利到自己的地下室参观机器,而且像他讲了自己的设想。在莫齐利离开时还将自己有关电子计算机的笔记本交给了他。后来莫齐利认真研究了阿塔那索夫的方案,并于1942年发表了题为《高速电子管装置的使用》的报告。这篇报告引起了当时的研究生埃克特浓厚的兴趣。于是他们两开始研制电子计算机。当时正值二战期间,军方急需一种高速的计算器来解决弹道的复杂计算问题。1943年,美国军方得知这一设想,马上拨款大力支持,成立了一个以莫奇利、埃克特为首的研制小组开始研制工作,预算经费为15万美元,后来,著名数学家、原子弹研制小组成员冯·诺依曼也加入了研制行列,并加大经费投入,最后总投资达48万美元。这笔巨大的经费阿塔纳索夫做梦也得不到的支持。
经过几年的艰苦努力,ENIAC终于研制成功。1945年春天,ENIAC首次试运行成功。ENIAC是一个庞大的机器,长30.48米,宽1米,有30个操作台,占地面积170平方米,约相当于10间普通房间的大小,重达30吨,耗电量150千瓦,造价48万美元。它包含了18000只电子管, 70,000 只电阻器, 10,000 电容器,1500继电器,6000多个开关,每秒能执行5000次加法或400次乘法运算,是继电器计算机的1000倍、手工计算的20万倍。
1946年2月10日,美国陆军军械部和宾夕法尼亚大学莫尔学院联合向世界宣布ENIAC的诞生。同年,莫齐利和埃克特也为ENIAC申请了专利。ENIAC研制成功后,便立即将其付诸军事应用和原子弹研制应用之中,处理了原子弹研制过程中出现的大量计算问题,为世界上第一颗原子弹的诞生出了不少力。ENIAC一时名声大噪,一度被认为是世界上第一台计算机。
就这样,使用电子电路和电子管制造计算机的创新思想都记在莫齐利和埃克特的功劳簿上。在这件事情上,莫齐利和埃克特无疑犯下了一个大错误,他们从没有对人说起,他的方案是由阿塔纳索夫方案演变而来的,甚至他们还极力想掩盖这一事实。
只是,阿坦纳索夫当时并未意识到自己的发明将影响到人类历史,以及可能的巨大经济利益,并没有为自己申请专利保护,他于1942年应征去海军服务,也无暇顾及此事。
阿塔纳索夫并没有劳神想证明自己是第一台电子计算机的发明者。直到有一天,一家公司主动找上门来,希望他提供证据,好证明莫齐利和艾克特的计算机专利无效。原来,1946年,埃克特和莫奇利,为ENIAC申请了发明专利。1947年,埃克特和莫奇利离开宾夕法尼亚大学,在费城创立了“埃克特与莫奇利计算机公司”(EMCC),后因资金周转困难,他们不得不把公司卖给了兰德公司,因此ENIAC的专利就转到了兰德公司手上。到了1971年兰德公司把拒付专利费的霍尼威尔公司告上法庭。而霍尼威尔反驳说专利来源于阿塔纳索夫。所以霍尼威尔公司的人找到了阿塔纳索夫并希望他提供证词。阿塔纳索夫同意并精确地解释了ABC的制造过程。这场官司持续了很久,法院一共开庭审讯135次。直到1973年10月19日美国明尼苏达地区法院给出正式宣判:“莫齐利和埃克特没有发明第一台计算机,只是利用了阿塔纳索夫发明中的构思。”并且判决莫齐利和埃克特的专利无效,理由是阿塔纳索夫早在1941年,就将他对计算机的初步构想告诉给莫齐利。并于第二天也就是7月20号的报纸上刊登了这则新闻。非常凑巧,有关此事的新闻报道就被媒体对政治丑闻“水门事件”的炒作淹没。所以ABC的研发工作又没得到世人的关注。所以,直到今日,都有很多教科书错误的采用世界上第一台电子计算机是ENIAC。
总结一下:
1.阿塔纳索夫-贝瑞计算机(Atanasoff-Berry Computer,简称ABC)是世界上第一台电子计算机,为艾奥瓦州立大学的约翰·文森特·阿塔纳索夫(John Vincent Atanasoff)和他的研究生克利福特·贝瑞(Clifford Berry)在1937年至1941年间开发。但ABC并未投入使用。
2.莫齐利和埃克特于1943年至1946年采用了阿塔那索夫和贝瑞的基本设想,采用了更多电子管。制造出运算能力更强的且真正投入使用的ENIAC。然后一直被后人认为是第一台计算机。
其它资料:
1943年,英国曾秘密制造出一台专用电子计算机,名叫科洛萨斯(Colossus),这台机器在二战期间为破译密码建立过殊荣。因此,Colossus比ENIAC问世早两年多,但也在ABC之后。