波士顿的新人

旧事已过,都变成新的了
正文

是谁发明了计算机(下)

(2019-10-24 18:59:01) 下一个

依然是1937年,MIT隔壁的哈佛,有个博士生艾肯(Howard Aiken)在为他的物理论文进行着枯燥的计算,实在受不了了,艾肯就向学校提出应该造一台机器来做这些重复劳动,系主任就和他讲,在哈佛的科学中心的阁楼里好像有你要的机器哦,不过就是有点旧。嗯,有多旧?大概100年吧。艾肯当时心中跑过多少匹草泥马,史书中没有记载。

进了阁楼,艾肯发现的正是巴贝奇的差分机的样品,那是巴贝奇的儿子根据老爹的设计,制作而成的六部样品机中的一部。和当年的爱塔小姐一样,艾肯被巴贝奇的机器迷住了。那年秋天,艾肯写了份22页的申请报告,要求哈佛和IBM合作,一起建造巴贝奇计算机的现代版。哈佛对此犹犹豫豫的,物理系对他的建议兴趣不大,甚至提醒他说,干这种吃力不讨好的事,对他以后晋升哈佛教授不会有太大帮助,倒是当时的哈佛校长柯南特(Conant)大力支持,批准了这个项目。

于是1941年的春天,IBM开始根据艾肯的设计蓝图,动工制造马可一号(Mark I),到1944年马可一号终于完成,这是一个八十尺长,五十尺宽,重达五吨的庞然大物,它没有采用二进制,也没有使用电子开关,用的是马达驱动的机械开关,做个乘法要6秒钟,而贝尔实验室Stibitz的复数计算器因为用了电子开关,同样的乘法计算只要一秒钟就够了。但马可一号实现了全自动,所有的数据和程序都是通过纸带输入的,可以在无人操作的情况下,自动运算数天之久,用艾肯的话来讲,就是“巴贝奇的梦想终于成真了”。

可是艾肯也好,前面提到的香农,Stibitz也好,他们都输给了一个德国人。

还是在1937年,德国柏林,工程师 Konard Zuse 在他父母家中的起居室里完成了Z1的原型,这个完全是高手在民间的典范。Z1采用二进制运算,起初用的是穿孔纸带来进行数据输入,后来 Zuse 发现废弃的电影胶卷更为价廉物美,就换成了用胶片作为输入媒介。Z1用的是机械开关,因为全是手工打造的,时不时会卡壳。于是在建造 Z2 的时候,在朋友的建议下,Zuse 试图采用当时最先进的电子真空管作开关,可是一打听,这个属于天价,只得放弃,退而求其次,使用了电话公司二手的电动机械开关。

到1941年,Zuse完成了Z3,这台机器基本实现了图灵机的设想,和现代计算机的唯一差别,就是没有电子开关,它使用的还是电动机械开关。哎,民科到底还是不行,若是使用了真空管,那么第一台电子计算机发明人的桂冠就非他莫属了。

1942年,Zuse向德军总部申请用真空管制造更快更好的计算机,预计要两年的时间,但遭到拒绝,因为司令部确信战争不用两年就可以结束了,德军对制造武器比计算机更有兴趣。

1943年,盟军对柏林实行空袭,Zuse的计算机和设计图纸一起,在轰炸中灰飞烟灭。

还是回到1937年。那一年,彷佛大家都被下了同样的魔咒,美国衣阿华州立大学的文森特·阿塔纳索夫(John Vincent Atanasoff)也被繁琐的数学计算搞得心烦意乱,开始琢磨设计一台计算机来取代这种低效的重复劳动。由此可见,至少在计算机这个行业,吃苦耐劳不算是一种美德。

文森特以最高的GPA从佛罗里达大学本科毕业,拿到了衣阿华州立的奖学金去读硕士,虽然哈佛大学后来也录取了他,但他还是决定做小池塘里的大鱼,去了衣阿华州立,毕业之后又去威斯康星大学拿了个物理学博士,然后回到衣阿华州立做了助理教授。文森特放弃哈佛也许是他人生的一大败笔,因为在衣阿华州立他找不到志同道合,又同样才华横溢的人可以与他合作。

文森特设计的计算机,使用的是二进制,在逻辑运算处理部分用上了电子真空管,而内存(Memory)部分,还是为了省钱,文森特决定使用电容器(Capacitor),所以这台机器虽然运算速度极快,但数据的读写却大大地拖了后腿。

1939年底,文森特向学校领导展示了他设计的样机(Prototype),然后递上一份35页的申请报告,要求5330美元的经费来完成他设计的计算机,这台机器的主要功能是解复杂的线性代数方程。文森特还留了个心眼,特地复印了一份他的申请报告给衣阿华州立的专利律师,让学校帮着申请专利。可是,出人意料的是这位律师根本没把这事放在心上,居然一直没有申请,这也为后来文森特的专利官司种下了祸根。估计文森特后半辈子一直在问候这位律师的祖宗八代。

真正摘取第一台电子计算机桂冠的是ENIAC,它是由莫奇利(John Mauchly)和埃克特(J. Presper Eckert)在美国军方的资助下研制成功的。

莫奇利可算是世家子弟,父亲是物理学家,周围的邻居也多是科学家,从小在这样的环境中长大,造就了莫奇利好学善问的习惯,加上他非常外向的性格,让他从我们前面提到的一众计算机先驱的发明中了获得了许多灵感。

1939年,他在纽约世博会上看到了使用打孔卡的计算器和使用电子真空管的密码加密机;1940年,他看到了贝尔实验室 George Stibitz 研制的复数计算器(The Complex Number Calculator)的一个演示;同年12月,莫奇利遇到了我们前文提到的,申请专利出了纰漏的阿塔纳索夫(Atanasoff),阿塔纳索夫声称他研制的计算机价廉物美,处理3000位数码(digits)的造价只有6000美元(还记得这位老兄为了省钱放弃了真空管吗?),平均每位数码只要2美元 ($2 per digit),这引起了莫奇利的极大兴趣,因为根据他的估算,自己设计的计算机造价每位数码至少要13美元。于是1941年6月,莫奇利专程拜访了阿塔纳索夫,看了他样机之后,莫奇利其实有点失望,因为使用电容代替真空管,虽然价廉但却并不物美,速度跟不上啊。这次拜访之后,1941年的夏天,莫奇利参加了由军方发起的,在宾州大学举办的为期十周的电气工程培训班,而就在这个暑期班上,他遇见了他的合作伙伴埃克特。

埃克特是个典型的“别人家的孩子”,长得有点像格里高利·派克,老爹是百万富翁地产开发商。有了高富帅还不算,他自己居然是个超级学霸,12岁时用磁铁和变阻器造了一个船模导航仪,赢得了费城市级科学竞赛的大奖,14岁时改装了家里的室内通话系统(Intercom),用交流电代替直流电,替家人消除了常常要给系统换电池的麻烦。高中毕业,埃克特不出所料地被MIT录取,但父母不舍得他离家“远”游,逼着他去了宾州大学(UPenn)。在宾大,埃克特继续光芒四射,先是发明了搞怪的“接吻器”,让一对恋人分别握住仪器的两端,然后热吻之际,电路被接通,如果人体电阻足够小的话(比如说这个吻接得足够湿),接吻器就会大放光芒,而且会鸣号祝贺。那时的他简直就是哈利波特小说中弗雷德和乔治·韦斯莱(Fred and George Weasley)的真人版。到了大三,埃克特用光调制技术(light modulating method)把声音记录到了胶卷上,从而获得一项专利。1941年埃克特宾大毕业,顺利地留校,在军方举办的暑期培训班上传授电气工程的知识,从而遇上了莫奇利。莫奇利在暑期培训班结束后也被聘任为宾大电气工程系摩尔学院(Moore School)的讲师。至此,莫奇利和埃克特汇聚在了莫尔学院。

1941年正是二战打得难分难解的时候,莫尔学院承担了为军方计算火炮弹道射击表的任务。计算一张射击表涉及到的数学运算非常巨大,而且对应某种型号的火炮需要根据气温、湿度、纬度等几百种不同的参数编制很多张射击表。当时他们用的是麻省理工Vannevar Bush发明的差分分析机(Differential Analyzer),Vannevar Bush 就是当年指导香农写下信息时代大宪章的那位教授。不过光有机器还不够,宾大又雇了170位计算师(computers)来帮助机器工作,英文的计算机(computer)就是由此得名的。即便如此,他们一周才能完成一张火炮射击表,完全无法满足军方的要求。

1942年8月,莫奇利起草了一份研制电子计算机的报告:“The Use of High-Speed Vacuum Tube Devices for Calculating”,获得军方首肯之后,埃克特又对这个报告进行了细化补充。他们给军方画了一张大饼,预测他们的机器将会把计算一个弹道需要的时间,从现在的20个小时缩短到100秒。

1943年4月9日,历史性的时刻来临了,军方要召见莫奇利和埃克特,决定是否为他们的设计立项拨款。头天晚上两人彻夜未眠修改他们的提案,等到上了军方的专车,两个小时的车程里,他们全程在后座讨论修改,下车进了军方的会客室,两人依然没有定案,还在继续商议,这样的临时抱佛脚真是可以载入史册了。

会议由 Oswald Veblen 主持,军方的代表是陆军弹道研究实验室主任西蒙上校(Colonel Leslie Simon),会议开了没多久,Veblen起身站了起来,对上校说了一句,“西蒙,掏钱吧”,然后转身扬长而去。估计此时莫奇利和埃克特一定是心花怒放,恨不得马上找间卧室先好好睡一觉再说。你也许会问 Oswald Veblen 是何方神圣?说实话,这人我也不熟,我只知道他是普林斯顿高等研究院(IAS - Institute for Advanced Study)的院长,他的手下有爱因斯坦,冯诺伊曼,哥德尔等众多大神。

1943年6月ENIAC(Electronic Numerical Integrator and Computer)开工建造,莫奇利担任设计指导,埃特克为总工程师,两个人配合默契,埃特克用他完美主义者的病态对工程精益求精,莫奇利则与技术人员谈笑风生,打成一片,为他们打气鼓劲。一年之后,正是1944年6月诺曼底登陆之际,1/6的机器完成,进行了一个简单的乘法运算测试,结果顺利完成,众人是一片欢呼。

1945年11月,ENIAC终于完工,100英尺长,8英尺高,用了17468个真空管,一秒钟可以进行5000次的加减运算,30秒可以完成一个弹道的计算,比他们当初的预测还要棒。而且最重要的是,这不是一台样机,而是可以立刻投入到实际工作中的实用产品。

人类历史上第一台全自动可编程的通用电子计算机就这样诞生了!

[ 打印 ]
阅读 ()评论 (4)
评论
波士顿的新人 回复 悄悄话 多了一个零,应该是8英尺高
新年好运 回复 悄悄话
回复 悄悄话 80英尺高!
XYZ94538 回复 悄悄话 计算机和网络技术都是美国政府的项目,不是私人或私人公司发明的。
登录后才可评论.