分析機
分析机(英語:)是由英国数学家查尔斯·巴贝奇设计的一种机械式通用计算机。从1837年首次提出这种机器的设计,一直到他去世的1871年,由于种种原因,这种机器并没有被真正地制造出来。但它本身的设计逻辑却十分先进,是大约100年后电子通用计算机的先驱。
设计
查尔斯·巴贝奇最初尝试的所谓差分机,可以通过求解差分来计算对数表和三角函数表,然后能近似计算多项式。由于巴贝奇与他的首席工程师约瑟夫·克莱芒起了争执,英国政府就撤回了这项项目的资金,差分机也因此没能完成[1][2][3]。在这期间,巴贝奇意识到建造一种更加通用的机器(即所谓的分析机)是可行的,于是便于1833年开始了分析机的设计[4][5]。
分析机由蒸汽机驱动,大约有30米长、10米宽。它的输入由程序和数据组成[6][1],并使用打孔卡输入,这种输入方法被当时的织布机广泛采用[7]。分析机通过一台打印机、一个弯曲的绘图仪和一个铃铛输出[1],也可以在纸上打孔以便日后读取。分析机采取普通的十进制定点计数法[1]。
它的“記憶體”大约可以存储1000个40位的十进制数(每个数约16.2kB)[8]。有一个算術邏輯單元可以进行四则运算、比较和求平方根操作[9]。刚开始研制的时候,分析机的外观被普遍认为和差分机相似 [10]。1858年的图纸呈现了一个有规律的网格布局[11]。与现代计算机的中央处理器(CPU)类似,其算術邏輯單元使用的微程序存储在插在被称为“桶”的滚筒上的支柱中,这为用户指定更加复杂的运算提供了便利。[12]
分析机使用的编程语言与今天的汇编语言类似,支持循环语句和条件分支,因此这门语言被认为是圖靈完備的。分析机采用三种不同的打孔卡和读卡器来区分算术运算、数字常量和存储的指令,以此实现了数字在存储器和运算单元之间的加载和存储操作。巴比奇在1837至1840年间写下了24份程序,并在之后又写了一份[7][13]。这些程序可以计算多项式、迭代公式、高斯消去法和伯努利数[7][14]。
参见
- 查尔斯·巴贝奇
- 差分机
参考
- Collier 1970, p. chapter 3.
- Lee, John A.n. . Google Books. [2012-08-01]. (原始内容存档于2020-07-09).
- Balchin, Jon. . Google Books. [2012-08-01]. (原始内容存档于2019-06-04).
- Dubbey, J. M.; Dubbey, John Michael. . Cambridge University Press. 2004-02-12: 197. ISBN 9780521524766 (英语).
- Bromley 1982, p. 196.
- Menabrea & Lovelace 1843.
- Bromley 1982, p. 215.
- Bromley 1982, p. 198.
- Bromley 1982, p. 211.
- Bromley 1982, p. 209.
- . Projects.ex.ac.uk. 1997-01-08 [2012-08-01]. (原始内容存档于2008-03-12).
- Tim Robinson. . Meccano.us. 2007-05-28 [2012-08-01]. (原始内容存档于2020-10-05).
- Bromley 1990, p. 89.
- Bromley 2000, p. 11.