Page 89 - 信息的脉络
P. 89
·第三部分·
1991 年,为了纪念查尔斯·巴贝奇诞辰 200 周年,多伦·斯沃德和他在伦
敦科学博物馆的同事根据巴贝奇的原始设计,制造出了一台可运转模型——差分
机Ⅱ。这些计算机史学家和工程师竭力保留了它的原始形态,制造时使用了原始
设计图、材料以及巴贝奇时代的制造精度。他们把这项工程视为巴贝奇项目的延
续。差分机Ⅱ大约由 8000 个齿轮组成,总重约 4.5 吨。它通过一个手摇柄进行操
作,设计中包含了许多故障保险机制,如机械式奇偶校验,可以用来防止出现错误,
即便震动导致某些齿轮发生紊乱,这些保险机制也能有效发挥作用。齿轮是按照
能以可控方式断裂的标准制造的,这等同于一根机械式保险丝。然而需要指出的
是,这台机器设计得太超前了。它的计算精度达到了 44 位二进制数。这个精度实
在是太高,即使是今天,我们所使用的许多机器计算精度也只有 32 位二进制数。
这台机器甚至还可以用来计算七阶多项式,而今天我们常用的也只是三阶多项式。
我们至今还不清楚巴贝奇为什么会觉得他需要这么高的精度。如果这台机器稍微
简单一些,他就不需要使用这么多齿轮,制造起来也就容易得多。巴贝奇把差分
机看做整个计算过程不可或缺的一部分,整个计算过程就是他设想的用来生产数
字的工厂。
巴贝奇不是什么深谋远虑的大师。他没能完成大型差分机的制造工作,并且
不明智地建议政府放弃研制尚未完成的原始机器,转而制造一台功能更强大、更
通用的机器,他称之为分析机。本质上,差分机是一种特殊用途的计算机器,巴
贝奇意识到他能设计这一种更为通用的机器,这种机器可以用来执行各种算术或
逻辑运算。在 1834—1836 年,巴贝奇构思出一种功能更强大、更通用机器的想法,
并且不断对设计进行修改,直到他去世为止。这种分析机从来没有付诸实际制造,
只是一项思想实验。尽管如此,其设计中蕴含的许多原则仍能在现代计算机中找
到踪影。特别是巴贝奇在设计中将用于执行各种算术运算的机器部件与用来存储
数据的机器部件分离开来这一点尤甚。巴贝奇借用纺织业中术语,把机器上的这
两个部件分别称为“计算工厂”(现在叫中央处理单元或 CPU)与存储数据的“仓
库”(对应于现在的计算机内存)。这种分离的思想就是冯 . 诺依曼在那篇著名报
告中所提出的现在计算机组织原则的基本特征。
巴贝奇在设计中的另一项重要创新是通过穿孔卡来提供机器指令,现在我们
把这些指令成为“程序”。巴贝奇通过穿孔卡“指挥”计算机的灵感来自一台自
动织布机,这种用穿孔卡控制机器的想法最早由法国人约瑟夫·雅卡尔(Joseph
Jacquard)提出,并将其用来控制织布机。这些穿孔卡片串在一起,组成条带,然
后穿过一个能够感知孔洞模式的机械设备进行读取。这些织布机能够根据穿孔卡
的指示指出十分复杂的凸显与图案,作出的产品精致程度令人惊奇。
• 73 •