经典电子计算机工作原理(电子计算机的先驱)

目录

1 巴贝奇的差分机、分析机

2 霍利瑞斯的制表机

3 Zuse I

4 Mark I

1 巴贝奇的差分机、分析机

英国数学家、发明家查尔斯·巴贝尔(Charles Babbage,1791-1871)出生于一个富有的银行家的家庭,在剑桥学习时,他认为可以利用蒸汽机进行运算。从剑桥大学毕业后留校,在数学领域造诣颇深,20多岁就加入了英国皇家学会。巴贝奇用从20岁到30岁之间的十年时间研制成功了差分机,以其计算速度和精度震惊科学界,也让政府同意出资研究其下一代机械式计算机-大型差分机。但受当时的加工精度限制,巴贝奇又总在工厂加工零部件的同时在图纸上修修改改,经常导致大批量的零件返工。如此折腾了20年,巴贝奇花光了所有的钱,宣布制造失败。然后他用了两年时间总结失败的教训,1834年,在50岁的时候,这个倔强的老头子开始设计更为复杂精密的分析机,可以运行包含“条件”、“循环”语句的程序,有寄存器用来存储数据。

经典电子计算机工作原理(电子计算机的先驱)(1)

Charles Babbage (1791-1871) ↑

分析机具有现代电子计算机的全部特征,有它自己设计独特的“键盘”、“显示器”、“CPU”、“内存”等等现代计算机的关键部件,只是不用电源而已。巴贝奇计划的重要创新之处,并不在于机械运算,而是在于他发现了,对算术过程的组织和逻辑控制才是最重要的。 当然,分析机的制造最后还是失败了。

下图就是巴贝奇设计出的分析机,差不多在设计完毕200来年才被制造出来。

经典电子计算机工作原理(电子计算机的先驱)(2)

分析机采用的一些计算机思想延用至今。分析机包括的存储和碾磨,就非常类似于今天计算机中采用的内存和处理器。输入和输出都采用打孔卡(十九世纪Jacquard发明的一种卡片)进行。

特别是,巴贝奇有一个关键的想法,机器必须能够在一串指令卡片中来回遍历,并根据实际计算的情况,来决定路过或重复。这种“条件分析”的想法,是他最先进的地方。而这种自主性,也以后的图灵机是等价的,图灵机就是根据纸带上的指令来切换机器的状态。巴贝奇很清楚,正是这一点,使他的机器具有通用的特性。

如果没有“条件分支”,或者说一个机械化的“如果...则...“的能力,那么他的伟大构想,与普通的加法机就没有什么区别。就只能将它看成一条流水线,从开始到结束,一切都是确定的,程序一旦开始执行,就不会有任何变化。而在他的模型的,”条件分支“意味着机器不仅具有工人的能力,还具有识别、决策和控制的能力。

巴贝奇关于通用机器的这些想法,比他的时代超前了100年。

2 霍利瑞斯的制表机

赫尔曼·赫勒里特(Herman Hollerith,1860-1929),1879年毕业于哥伦比亚大学。他对数学和机械方面的问题有浓厚兴趣,并有显著的才能。因此,赫勒里特毕业后,参加了美国人口普查工作。

经典电子计算机工作原理(电子计算机的先驱)(3)

Herman Hollerith circa 1888

一天,霍利瑞斯和一位在人口调查局工作的官员比灵斯聊天,几句话就扯到了令人厌烦而又无法回避的人口调查问题上,两个人开始发牢骚,比灵斯更是抱怨不停。念了一阵苦经之后,比灵斯忽然提到一个他已考虑了多日的设想,那就是使用穿孔卡片帮助统计。让每个接受调查的人都使用相同规格的硬纸卡片,按照不同的个人情况在不同的位置上穿孔,然后使用一种特殊的机器把这些信息读出并加以统计,至于机器如何设计他就不得而知了。

比灵斯的设想给霍利瑞斯以极大的启发,激起了霍利瑞斯的创造灵感,使他仿佛看到了解决问题的曙光。他过去听说过提花编织机上穿孔卡的故事,那件事发生在1728年,一位法国工程师发明了一种自动提花织布机,其中设计了一连串长长的穿了孔的卡片,让卡片转动,使得那些与卡片上的洞眼正好对着的织针顺利通过;而不相对的织针通不过。这样,纱线就织出了规定好的花纹。现在已是19世纪末,时代不同了,要求也不一样。霍利瑞斯懂得,仅用机械的方法显然会黔驴技穷,只有配上最新的电工技术才会使问题得到解决。

赫勒里特认为,人口普查统计资料的处理应该实现机械化。于是他用穿孔卡和电气控制技术来创造一种数据分析处理机。1888年,他制造出一台制表机,并送往巴黎国际博览会去展览。这台制表机采用机电式的自动计数装置,取代了纯机械的计数装置,加快了数据处理的速度,能避免手工操作引起的差错。于是,美国1890年人口普查的统计制表工作,就全部采用了赫勒里特制表机。

经典电子计算机工作原理(电子计算机的先驱)(4)

1822年,法国的盖 吕萨克和阿拉戈利用电流的磁效应,把通电导线绕在软铁上,使一块普通的软铁变成了磁铁。几年后,美国的亨利在此基础上发明了磁性强大的电磁铁,利用电磁铁的原理,人们制成了继电器。继电器是在机电式计算机上第一个派上用场的电器部件。

继电器是一种开关,不过它的开启与闭合不是靠人手去拨弄,而是靠微弱的电流。这种弱电流通过一个电磁铁的线圈,使电磁铁磁化并将一个衔铁吸下。衔铁连着一个开关,就可使得另一个大电流接通或断开。有了继电器,一个微弱的电流就可以控制一个大电流的开断。而微弱电流本身的开断不一定需要我们用手去拨动,它可以通过其他各种手段达到。比如无线电信号、导电的水、能导电的人体等,因此,继电器在各种控制电路中有着广泛的应用。

计算机的研制者们欣喜地发现,继电器的应用还有潜力可挖,它可以用来计数。它有开和关两种状态,就可以用来表示二进制中“0”和“1”两个数。用多个继电器就可以记录多位的二进制数。正是因为继电器具备这样的特性,所以,后来在机电式计算机中发挥了关键作用。

霍利瑞斯制表机主要由五个部分构成:接受压力机、继电器、计数器、分类盒、电池。制表机上阅读穿孔卡片的设计别具匠心,现在我们就以一个孔的位置为例介绍一下。先将卡片平放在相应位置上,孔的位置上方是一根带弹簧的金属棒,下方是一个水银杯。工作时,金属棒被轻轻地压下来,如果该位置上没有孔,金属棒被卡片纸挡住下不来,不能出现后续动作。反之,由于该位置事先已穿好了孔,金属棒就“长驱直入”地插入下方水银杯中。水银和金属棒都是导体,它们接触以后,就好比接通了开关,形成了回路,产生电流。由于所加的电压低,形成的电流很弱,不会产生损坏制表机的电火花,也不会对人体造成伤害。另一方面,电流虽弱,但可以使继电器吸合,产生大电流。大电流使相应的计数器加1,这样就完成了此项目的一个人的统计。这种设计实在太巧妙了!金属棒有很多根,它的数目由统计项目和分类的多少来决定。

霍列瑞斯博士巧妙的设计在于自动统计。他在机器上安装了一组盛满水银的小杯,穿好孔的卡片就放置在这些水银杯上。卡片上方有几排精心调好的探针,探针连接在电路的一端,水银杯则连接于电路的另一端。与杰卡德提花机穿孔纸带的原理类似:只要某根探针撞到卡片上有孔的位置,便会自动跌落下去,与水银接触接通电流,启动计数装置前进一个刻度。由此可见,霍列瑞斯穿孔卡表达的也是二进制信息:有孔处能接通电路计数,代表该调查项目为“有”(“1”),无孔处不能接通电路计数,表示该调查项目为“无”(“0”)。

3 Zuse I

康拉德·楚泽(Konrad Zuse于1910-1995)出生在柏林,是一位德国工程师。他提出了计算机程序控制的基础概念,于1941年Zuse首次设计完成了使用继电器的程序控制计算机。

经典电子计算机工作原理(电子计算机的先驱)(5)

楚泽在父母的帮助下,他把家中的起居室隔出一间,改造成“实验室”兼“制造厂”,孤身一人开始了漫长的研制生涯。楚泽生活在法西斯统治下的德国,无从得知美国科学家研制计算机的消息,甚至没有听说巴贝奇和霍列瑞斯的名字。在这一点上,他远没有美国发明家幸运,无法得到大学或政府机构的任何资助,只有几个朋友“赞助”了很少的一点钱。

几乎用了两年时间在黑暗中摸索,楚泽凭着顽强的毅力独自奋斗。他认为,计算机最重要的部分不一定是计算本身,而是过程和计算结果的传送和储存。因此,他把研究的重点放在存储器上,设计了一种可以存储64位数的机械装置——数千片薄钢板用螺栓拧在一起的笨重部件,体积约1立方米——然后与机械运算机构连接起来。朋友们都不太懂他想干什么,只能提供有限的帮助,例如,帮他用切割设备加工了数以百计的金属片。其它的薄钢板,只好靠手锯在圆钢上一片一片锯下来。以这种简陋的条件,1938年,楚泽居然完成了一台可编程数字计算机Z-1。他花光了仅有的几千马克,还是无法买到更合适的零件。因此,Z-1计算机实际上是一台实验模型,虽然可以完成3×3矩阵运算过程,但始终未能投入实际使用。

经典电子计算机工作原理(电子计算机的先驱)(6)

Z-I计算机最大的贡献是楚泽第一次采用了二进制数,在薄钢板组装的存储器中,楚泽用一个在细孔中移动的针,指明数字“0”或“1”。他的这种选择,明显地受到莱布尼茨著作的启发,他后来发表的研究报告,副题就是“向莱布尼茨致敬”。这台机器也采用了“穿孔带”输入程序,不过不是纸带,而是35毫米电影胶片;数据则由一个数字键盘敲入,计算结果用小电灯泡显示。

Zuse通过使用二进制作为权宜之计,避免了巴贝奇需要的成千上成个啮合的十齿齿轮。这个在理论上并不是革命性的进展,但是从实践的角度来看,这是极其重要的简化。一般的工程师都会用十进制来表示数字,而Zuse从中解放出来了。

由于纯机械式Z-1计算机性能不理想,第二年,楚泽的朋友给了他一些电话公司废弃的继电器,楚泽用它们组装了第二台电磁式计算机Z-2, 这台机器已经可以正常工作。这时,他的工作引起德国飞机实验研究所的关注,使他得到了一笔资助。1941年,第三台电磁式计算机Z-3完成,使用了2600个继电器,用穿孔纸带输入,实现了二进制数程序控制。程序控制思想虽然过去也有人提倡,但楚泽是把它付诸实施的第一人。Z-3能达到每秒3~4次加法的运算速度,或者在3~5秒内完成一次乘法运算。1942年,在紧张研究的间隙里,他写作了世界上第一个下国际象棋的计算机程序。

随后,楚泽创办了“楚泽计算机公司”,1958年研制出电子管通用计算机Z-22R,距离第一台电子管通用计算机ENIAC诞生已经过去了12年之久。电脑史学家认为,如果楚泽不是生活在法西斯统治下的德国,他可能早就把Z型计算机系列升级为电子计算机,世界计算机的历史将会改写。事实上,早在1938年,楚泽和他的朋友已经在考虑用2000个电子管和其他电子元件组装新的计算机。当他在战后听说美国宾夕法尼亚大学早已研制出电子管计算机的消息,不禁感叹地说:“我所能做的,仅仅是摇摇头而已。”

4 Mark I

20世纪40年代,哈佛大学的霍华德·艾肯(Howard Aiken,1900-1973)受到巴贝奇的启发,始有 Harvard Mark I 的诞生。

经典电子计算机工作原理(电子计算机的先驱)(7)

艾肯 ↑

艾肯和IBM公司长达5-6年的合作和努力(当然也包括难以避免的摩擦和碰撞),Mark I终于在1944年5月完工并投入使用。它用了3000多个电机驱动的继电器,是一个重达5吨的庞然大物,造价高达50万美元(有的资料甚至说超过100万美),其中IBM公司的投资占2/3,其余1/3 由海军资助。其核心是71个循环寄存器(rotating register,把运算中暂时保存操作数的设备叫做register就始于Mark I),每个可存放一个正或负的23 bit的数字。数据和指令通过穿孔卡片机输入,输出则由电传打字机实现。其加法速度是300ms,乘法速度是6s,除法速度是11.4 s。这与现代计算机当然无法相比,即使与晚它两年诞生的世界上第一台电子计算机ENIAC相比也显得十分落后,但它却实实在在是世界上第一台实现顺序控制的自动数字计算机,IBM公司方面把它命名为ASCC,即Automatic Sequence Controlled Calculator,是计算技术历史上的一个重大突破。4个专家过去用3周时间才能完成的任务,在Mark I上只要19个小时就完成了。而且它非常可靠,每周工作7天,每天工作24小时,这是初期的电子计算机无法比拟的。

经典电子计算机工作原理(电子计算机的先驱)(8)

Mark I主要供海军舰船局(Bureau of Ships)用于计算弹道和编制射击表,也曾在曼哈顿计划中计算有关原子弹的问题。此外,它也为哈佛大学内外的科学家服务。

Mark I工作到1958年才退役,现在还在美国被仔细地保存着。

马克一号之后有马克二号(在1947年 或是 1948年),马克三号/ADEC(1949年九月)以及哈佛马克四号(1952年),全都是Aiken的工作成果。马克二号是马克一号的效能增进版,但也是由机电继电器所构成。马克三号部分采用电子元件,而马克四号就全部改用电子元件了,也就是固态元件。马克三号与马克四号使用磁鼓内存,马克四号同时也有使用磁芯内存。

经典电子计算机工作原理(电子计算机的先驱)(9)

-End-

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页