|
大约在1834年,拜比吉完成了一项新设计。这种新设计的计算机有专门控制运算程序的机构,而机器的其余部分可以进行各种具体的数字运算。新机器可能达到的计算能力使他惊喜万分。1835年5月,他按捺不住内心的激动写信给布鲁塞尔皇家科学院,他说:“……我已放弃了所有其他的课题,……,我本人都为自己赋予这台机器的威力所震惊,……它可以处理100个变量,每个数可以有25位数字。……”在信的末尾,拜比吉信心十足地写道:发明中最大的困难已经克服,只需要几个月就能解决全部细节并画出设计图。
拜比吉的分析机的主要设计思想是什么呢?分析机主要将由三部分组成:
1.保存数字信息的齿轮式寄存器,拜比吉称之为“堆栈”(Store),即仓库的意思。“堆栈“内有100个寄存器。这部分的构造和差分机差不多,关键是运算已不在这些寄存器内进行,有新的机构进行运算。
2.从寄存器取出数据进行各种运算的装置,拜比吉叫它“工场”(mill)。它也是由很多“轴”组成的。利用各种齿轮及齿轮的咬合、脱离、旋转、平移等机械原理,把数据从“堆栈”的“轴”上提升传送到“工场”的“轴”上以备作运算。假如不需要“堆栈”中的“轴“保持原数据,那么它也可以下降。
为了加快运算速度,拜比吉设计了先进的进位机构(anticipating carnage)。他认为这是分析机中最重要的部分。有了它,50位加50位的操作只需一次转轴即能完成,使得作加法操作时90%的时间花在纯粹的加法上,只有10%的时间用在进位上。机器的乘法是用累次相加来做的。这样,两个50位数相乘所需的加法次数就太可观了。拜比吉计划先算出被乘数的1-9倍这9个最基本的倍数,并将其存入寄存器,然后在做乘法时由选择机构提取所需的倍数加到部分积上,这就保证了运算速度。他估计他的机器作加、减法可达每分钟六十次;完成两个50位数的乘法只需要一分钟(比第一台电子计算机约慢100倍)。这种速度在当时是够理想的了。一次,拜比吉到海军军部访问,见到一位聋哑先生——那里最好的会计,当询问他做两个50位数的乘法要多少时间时,聋哑先生写道:半小时。
3.控制操作顺序、选择所需处理的数据以及输出结果的装置。拜比吉没有给这部分装置起专门的名字,它实际上起到了现代计算机中控制器的作用。拜比吉的这一设计是受到了加卡提花机穿孔卡的启示。拜比吉曾到欧洲大陆做经济考察,在巴黎展览会上看见一架加卡提花机。这部提花机使用穿孔卡片自动控制提经线的操作。当针遇到有孔的地方就穿孔而勾起经线,无孔的地方针就被纸带挡住。花纹图案是预先按程序穿孔记录在纸带上的。热衷于计算机设计的拜比吉马上想到可以把这项新技术用到分析机上。在1839年他给自己的朋友阿拉戈(Arago)的信中说,他正是“借助加卡发明的那种卡片系统”,他写道:“我利用了这种美妙的发明,借助类似的方法对我的计算机下达命令,让它计算任一复杂的公式”。他因而完成了人类计算工具史上的一次重大改革。从此以后,直到第一台电子计算机ENIAC诞生之前的各种分析机、统计机都采用了这项由提花机中移植过来的穿孔卡技术。
拜比吉还有几个非常出色的设计思想。他设想了一种现在叫做条件转移的指令。即在用分析机解题时,可以根据某个被计算结果的正负号,从可能继续运算的两条路线中选择一条做下去。这一极重大的创新,标志着机器不仅能代替人的具体计算,而且开始代替人的逻辑判断。它是实现现代电子计算机设计的很关键的思想。
另外,拜比吉为了控制卡片的重复使用次数,不断改进了一种卡片记数装置,这也是现代计算机设计所具有的重要特性。它使得在还不能决定某些运算所需次数的情况下,仍可以向下编制程序。为了进一步提高运算速度,拜比吉使机器可以使用各种预先制好的函数表格,办法是将函数表中的数据穿成卡片,当机器运算中需要用到某个函数值时,它将显示该函数相应的自变量值,并响铃报警。这时,计算人员即刻找出穿有这个自变量及函数值的卡片送入机器。机器根据卡上的函数值用逆运算得到自变量值并和它原来给的自变量比较。如它们的差为0,机器就继续工作;否则,卡片将被抛出。这一思想在现代计算机中也出现了。
分析机输出的办法有三种:1.打印一份或两份结果;2.准备铅板印刷;3.将数字结果穿孔在卡片或金属片上。
确实,拜比吉的分析机已经包括了现代计算机设计的一些主要思想。顺便提一句,拜比吉还曾经考虑过算术的逻辑问题。他也不太满意机器内部运算使用十进制。他考虑过12、20等进位制,甚至设计了基于100的进位制。他还试过5,4,3,2等各种进位制,但这时需要的齿轮太多,所以都被弃了。纯机械的结构使他还没能看到二进制的特殊意义。在1839年他给自己的朋友阿拉戈(Arago)的信中说,他正是“借助加卡发明的那种卡片系统”,他写道:“我利用了这种美妙的发明,借助类似的方法对我的计算机下达命令,让它计算任一复杂的公式”。他因而完成了人类计算工具史上的一次重大改革。从此以后,直到第一台电子计算机ENIAC诞生之前的各种分析机、统计机都采用了这项由提花机中移植过来的穿孔卡技术。
拜比吉还有几个非常出色的设计思想。他设想了一种现在叫做条件转移的指令。即在用分析机解题时,可以根据某个被计算结果的正负号,从可能继续运算的两条路线中选择一条做下去。这一极重大的创新,标志着机器不仅能代替人的具体计算,而且开始代替人的逻辑判断。它是实现现代电子计算机设计的很关键的思想。
另外,拜比吉为了控制卡片的重复使用次数,不断改进了一种卡片记数装置,这也是现代计算机设计所具有的重要特性。它使得在还不能决定某些运算所需次数的情况下,仍可以向下编制程序。为了进一步提高运算速度,拜比吉使机器可以使用各种预先制好的函数表格,办法是将函数表中的数据穿成卡片,当机器运算中需要用到某个函数值时,它将显示该函数相应的自变量值,并响铃报警。这时,计算人员即刻找出穿有这个自变量及函数值的卡片送入机器。机器根据卡上的函数值用逆运算得到自变量值并和它原来给的自变量比较。如它们的差为0,机器就继续工作;否则,卡片将被抛出。这一思想在现代计算机中也出现了。 |