计算机现代史 | 从巴贝奇到电子计算机
注:本文为 “计算机的现代历史” 相关译文。
英文引文,机翻未校。
The Modern History of Computing
计算机现代史
First published Mon Dec 18, 2000; substantive revision Fri Jun 9, 2006
Historically, computers were human clerks who calculated in accordance with effective methods. These human computers did the sorts of calculation nowadays carried out by electronic computers, and many thousands of them were employed in commerce, government, and research establishments. The term computing machine, used increasingly from the 1920s, refers to any machine that does the work of a human computer, i.e., any machine that calculates in accordance with effective methods. During the late 1940s and early 1950s, with the advent of electronic computing machines, the phrase ‘computing machine’ gradually gave way simply to ‘computer’, initially usually with the prefix ‘electronic’ or ‘digital’. This entry surveys the history of these machines.
历史上,“computers”(计算机)是指按照有效方法进行计算的人类职员。这些人类计算机从事着如今由电子计算机完成的各类计算工作,成千上万个这样的职员受雇于商业、政府和研究机构。术语 computing machine(计算机器)自 1920 年代起使用日益增多,指任何执行人类计算机工作的机器,即任何按照有效方法进行计算的机器。1940 年代末至 1950 年代初,随着电子计算机器的出现,“computing machine” 这一短语逐渐让位于简单的 “computer”,起初通常带有 “electronic”(电子的)或 “digital”(数字的)前缀。本文概述这些机器的历史。
Babbage
巴贝奇
Charles Babbage was Lucasian Professor of Mathematics at Cambridge University from 1828 to 1839 (a post formerly held by Isaac Newton). Babbage’s proposed Difference Engine was a special-purpose digital computing machine for the automatic production of mathematical tables (such as logarithm tables, tide tables, and astronomical tables). The Difference Engine consisted entirely of mechanical components — brass gear wheels, rods, ratchets, pinions, etc. Numbers were represented in the decimal system by the positions of 10-toothed metal wheels mounted in columns. Babbage exhibited a small working model in 1822. He never completed the full-scale machine that he had designed but did complete several fragments. The largest — one ninth of the complete calculator — is on display in the London Science Museum. Babbage used it to perform serious computational work, calculating various mathematical tables. In 1990, Babbage’s Difference Engine No. 2 was finally built from Babbage’s designs and is also on display at the London Science Museum.
查尔斯 · 巴贝奇(Charles Babbage)于 1828 年至 1839 年担任剑桥大学卢卡斯数学教授(这一职位曾由艾萨克 · 牛顿担任)。巴贝奇提出的差分机(Difference Engine)是一种专用数字计算机器,用于自动生成数学表格(如对数表、潮汐表和天文表)。差分机完全由机械部件组成——黄铜齿轮、连杆、棘轮、小齿轮等。数字通过安装在立柱上的 10 齿金属轮的位置以十进制表示。巴贝奇于 1822 年展示了一个小型工作模型。他从未完成自己设计的全尺寸机器,但确实完成了几个部件。其中最大的——占完整计算器的九分之一——现陈列于伦敦科学博物馆。巴贝奇曾用它进行严肃的运算工作,计算各种数学表格。1990 年,巴贝奇的差分机 2 号终于根据其设计图纸建造完成,也陈列于伦敦科学博物馆。
The Swedes Georg and Edvard Scheutz (father and son) constructed a modified version of Babbage’s Difference Engine. Three were made, a prototype and two commercial models, one of these being sold to an observatory in Albany, New York, and the other to the Registrar-General’s office in London, where it calculated and printed actuarial tables.
瑞典人乔治 · 沙伊茨和爱德华 · 沙伊茨(父子)建造了巴贝奇差分机的一个改进版本。共制造了三台,一台原型机和两台商业机型,其中一台售予纽约奥尔巴尼的一座天文台,另一台售予伦敦的登记总局,用于计算和印刷保险统计表。
Babbage’s proposed Analytical Engine, considerably more ambitious than the Difference Engine, was to have been a general-purpose mechanical digital computer. The Analytical Engine was to have had a memory store and a central processing unit (or ‘mill’) and would have been able to select from among alternative actions consequent upon the outcome of its previous actions (a facility nowadays known as conditional branching). The behaviour of the Analytical Engine would have been controlled by a program of instructions contained on punched cards connected together with ribbons (an idea that Babbage had adopted from the Jacquard weaving loom). Babbage emphasised the generality of the Analytical Engine, saying ‘the conditions which enable a finite machine to make calculations of unlimited extent are fulfilled in the Analytical Engine’ (Babbage [1994], p. 97).
巴贝奇提出的分析机(Analytical Engine)远比差分机雄心勃勃,本将成为一台通用机械数字计算机。分析机本应拥有存储器和中央处理单元(或称 “mill”),并能够根据其先前行为的结果在多种备选动作中进行选择(这一功能如今称为条件分支)。分析机的行为将由穿孔卡片上的指令程序控制,这些卡片用带子连接在一起(这一想法是巴贝奇从雅卡尔提花织机借鉴而来的)。巴贝奇强调了分析机的通用性,他说:“使有限机器能够进行无限范围计算的条件,在分析机中得到了满足”(Babbage [1994],第 97 页)。
Babbage worked closely with Ada Lovelace, daughter of the poet Byron, after whom the modern programming language ADA is named. Lovelace foresaw the possibility of using the Analytical Engine for non-numeric computation, suggesting that the Engine might even be capable of composing elaborate pieces of music.
巴贝奇与诗人拜伦之女阿达 · 洛夫莱斯(Ada Lovelace)密切合作,现代编程语言 Ada 即以她命名。洛夫莱斯预见到使用分析机进行非数值计算的可能性,提出该机器甚至可能能够创作复杂的音乐作品。
A large model of the Analytical Engine was under construction at the time of Babbage’s death in 1871 but a full-scale version was never built. Babbage’s idea of a general-purpose calculating engine was never forgotten, especially at Cambridge, and was on occasion a lively topic of mealtime discussion at the war-time headquarters of the Government Code and Cypher School, Bletchley Park, Buckinghamshire, birthplace of the electronic digital computer.
1871 年巴贝奇去世时,分析机的一个大型模型正在建造中,但全尺寸版本从未建成。巴贝奇关于通用计算引擎的想法从未被遗忘,尤其在剑桥,它偶尔成为白金汉郡布莱切利园政府密码学校战时总部餐桌上热烈讨论的话题——布莱切利园正是电子数字计算机的诞生地。
Analog computers
模拟计算机
The earliest computing machines in wide use were not digital but analog. In analog representation, properties of the representational medium ape (or reflect or model) properties of the represented state-of-affairs. (In obvious contrast, the strings of binary digits employed in digital representation do not represent by means of possessing some physical property — such as length — whose magnitude varies in proportion to the magnitude of the property that is being represented.) Analog representations form a diverse class. Some examples: the longer a line on a road map, the longer the road that the line represents; the greater the number of clear plastic squares in an architect’s model, the greater the number of windows in the building represented; the higher the pitch of an acoustic depth meter, the shallower the water. In analog computers, numerical quantities are represented by, for example, the angle of rotation of a shaft or a difference in electrical potential. Thus the output voltage of the machine at a time might represent the momentary speed of the object being modelled.
最早广泛使用的计算机器并非数字式的,而是模拟式的。在模拟表示中,表示媒介的属性模仿(或反映、或建模)被表示事态的属性。(形成明显对比的是,数字表示中使用的二进制数字串 并不 通过拥有某种与被表示属性大小成比例的物理属性——如长度——来进行表示。)模拟表示构成一个多样的类别。例如:地图上的一条线越长,它所表示的道路就越长;建筑师模型中透明塑料方格越多,所表示建筑的窗户就越多;声学测深仪的音调越高,水就越浅。在模拟计算机中,数值量通过例如轴的旋转角度或电位差来表示。因此,机器在某时刻的输出电压可能代表被建模物体的瞬时速度。
As the case of the architect’s model makes plain, analog representation may be discrete in nature (there is no such thing as a fractional number of windows). Among computer scientists, the term ‘analog’ is sometimes used narrowly, to indicate representation of one continuously-valued quantity by another (e.g., speed by voltage). As Brian Cantwell Smith has remarked:
正如建筑师模型的例子所清楚表明的,模拟表示在本质上可能是 离散的(不存在分数个窗户这种东西)。在计算机科学家中,术语 “analog” 有时被狭义地使用,表示用一个 连续值 量表示另一个连续值量(例如用电压表示速度)。正如 Brian Cantwell Smith 所言:
‘Analog’ should … be a predicate on a representation whose structure corresponds to that of which it represents … That continuous representations should historically have come to be called analog presumably betrays the recognition that, at the levels at which it matters to us,世界比我们想象的更为基础性地连续而非离散。 (Smith [1991], p. 271)
“Analog” 应当……是用来描述一种表示的谓词,其结构对应于它所表示之物的结构……连续表示在历史上被称为 analog,大概反映了一种认识:在我们所关注的层面上,世界比我们想象的更为基础性地连续而非离散。(Smith [1991],第 271 页)
James Thomson, brother of Lord Kelvin, invented the mechanical wheel-and-disc integrator that became the foundation of analog computation (Thomson [1876]). The two brothers constructed a device for computing the integral of the product of two given functions, and Kelvin described (although did not construct) general-purpose analog machines for integrating linear differential equations of any order and for solving simultaneous linear equations. Kelvin’s most successful analog computer was his tide predicting machine, which remained in use at the port of Liverpool until the 1960s. Mechanical analog devices based on the wheel-and-disc integrator were in use during World War I for gunnery calculations. Following the war, the design of the integrator was considerably improved by Hannibal Ford (Ford [1919]).
开尔文勋爵之弟詹姆斯 · 汤姆森(James Thomson)发明了机械轮盘积分器,这成为模拟计算的基础(Thomson [1876])。兄弟俩建造了一种计算两个给定函数乘积积分的装置,开尔文还描述了(尽管未建造)用于积分任意阶线性微分方程和求解联立线性方程的通用模拟机器。开尔文最成功的模拟计算机是他的潮汐预测机,该机器在利物浦港一直使用到 1960 年代。基于轮盘积分器的机械模拟装置在第一次世界大战期间用于火炮计算。战后,汉尼拔 · 福特(Hannibal Ford)大幅改进了积分器的设计(Ford [1919])。
Stanley Fifer reports that the first semi-automatic mechanical analog computer was built in England by the Manchester firm of Metropolitan Vickers prior to 1930 (Fifer [1961], p. 29); however, I have so far been unable to verify this claim. In 1931, Vannevar Bush, working at MIT, built the differential analyser, the first large-scale automatic general-purpose mechanical analog computer. Bush’s design was based on the wheel and disc integrator. Soon copies of his machine were in use around the world (including, at Cambridge and Manchester Universities in England, differential analysers built out of kit-set Meccano, the once popular engineering toy).
斯坦利 · 法伊弗(Stanley Fifer)报告称,第一台半自动机械模拟计算机由曼彻斯特的大都会维克斯公司于 1930 年前在英国建造(Fifer [1961],第 29 页);然而,我迄今未能核实这一说法。1931 年,万尼瓦尔 · 布什(Vannevar Bush)在麻省理工学院工作时建造了微分分析仪,这是第一台大型自动通用机械模拟计算机。布什的设计基于轮盘积分器。很快,他的机器的复制品在世界各地投入使用(包括在英国剑桥大学和曼彻斯特大学,用曾经流行的工程玩具 Meccano 套件组装的微分分析仪)。
It required a skilled mechanic equipped with a lead hammer to set up Bush’s mechanical differential analyser for each new job. Subsequently, Bush and his colleagues replaced the wheel-and-disc integrators and other mechanical components by electromechanical, and finally by electronic, devices.
每次为新任务设置布什的机械微分分析仪,都需要一名配备铅锤的熟练技工。随后,布什及其同事将轮盘积分器和其他机械部件替换为机电装置,最终替换为电子装置。
A differential analyser may be conceptualised as a collection of ‘black boxes’ connected together in such a way as to allow considerable feedback. Each box performs a fundamental process, for example addition, multiplication of a variable by a constant, and integration. In setting up the machine for a given task, boxes are connected together so that the desired set of fundamental processes is executed. In the case of electrical machines, this was done typically by plugging wires into sockets on a patch panel (computing machines whose function is determined in this way are referred to as ‘program-controlled’).
微分分析仪可概念化为由"黑箱"组成的集合,这些黑箱以允许大量反馈的方式相互连接。每个黑箱执行一个基本过程,例如加法、变量乘以常数、积分。在为给定任务设置机器时,黑箱被连接在一起,从而执行所需的基本过程集合。对于电子机器,这通常通过将导线插入插线板上的插孔来完成(以这种方式确定功能的计算机器称为"程序控制")。
Since all the boxes work in parallel, an electronic differential analyser solves sets of equations very quickly. Against this has to be set the cost of massaging the problem to be solved into the form demanded by the analog machine, and of setting up the hardware to perform the desired computation. A major drawback of analog computation is the higher cost, relative to digital machines, of an increase in precision. During the 1960s and 1970s, there was considerable interest in ‘hybrid’ machines, where an analog section is controlled by and programmed via a digital section. However, such machines are now a rarity.
由于所有黑箱并行工作,电子微分分析仪能非常快速地求解方程组。但另一方面,需要付出代价:将待解问题改造为模拟机器所要求的形式,以及设置硬件以执行所需计算。模拟计算的一个主要缺点是,相对于数字机器,提高精度的成本更高。1960 年代和 1970 年代,人们对"混合"机器(模拟部分由数字部分控制和编程)相当感兴趣。然而,这种机器如今已十分罕见。
The Universal Turing Machine
通用图灵机
In 1936, at Cambridge University, Turing invented the principle of the modern computer. He described an abstract digital computing machine consisting of a limitless memory and a scanner that moves back and forth through the memory, symbol by symbol, reading what it finds and writing further symbols (Turing [1936]). The actions of the scanner are dictated by a program of instructions that is stored in the memory in the form of symbols. This is Turing’s stored-program concept, and implicit in it is the possibility of the machine operating on and modifying its own program. (In London in 1947, in the course of what was, so far as is known, the earliest public lecture to mention computer intelligence, Turing said, ‘What we want is a machine that can learn from experience’, adding that the ‘possibility of letting the machine alter its own instructions provides the mechanism for this’ (Turing [1947] p. 393). Turing’s computing machine of 1936 is now known simply as the universal Turing machine. Cambridge mathematician Max Newman remarked that right from the start Turing was interested in the possibility of actually building a computing machine of the sort that he had described (Newman in interview with Christopher Evans in Evans [197?].
1936 年,在剑桥大学,图灵发明了现代计算机的原理。他描述了一种抽象的数字计算机器,由无限存储器和一个在存储器中来回移动的扫描器组成,扫描器逐个符号地读取所发现的内容并写入更多符号(Turing [1936])。扫描器的动作由以符号形式存储在存储器中的指令程序所支配。这就是图灵的存储程序概念,其中隐含了机器对自身程序进行操作和修改的可能性。(1947 年在伦敦,据已知最早的提及计算机智能的公开讲座中,图灵说:“我们想要的是一台能从经验中学习的机器”,并补充道"让机器改变自身指令的可能性为此提供了机制"(Turing [1947] 第 393 页)。图灵 1936 年的计算机器如今简称为通用图灵机。剑桥数学家马克斯 · 纽曼(Max Newman)评论说,图灵从一开始就对实际建造他所描述的那种计算机器感兴趣(纽曼在接受 Christopher Evans 采访时,见 Evans [197?])。
From the start of the Second World War Turing was a leading cryptanalyst at the Government Code and Cypher School, Bletchley Park. Here he became familiar with Thomas Flowers’ work involving large-scale high-speed electronic switching (described below). However, Turing could not turn to the project of building an electronic stored-program computing machine until the cessation of hostilities in Europe in 1945.
第二次世界大战伊始,图灵就成为布莱切利园政府密码学校的首席密码分析员。在这里,他熟悉了托马斯 · 弗劳尔斯(Thomas Flowers)关于大规模高速电子开关的工作(见下文描述)。然而,直到 1945 年欧洲敌对行动停止,图灵才得以着手建造电子存储程序计算机器的项目。
During the wartime years Turing did give considerable thought to the question of machine intelligence. Colleagues at Bletchley Park recall numerous off-duty discussions with him on the topic, and at one point Turing circulated a typewritten report (now lost) setting out some of his ideas. One of these colleagues, Donald Michie (who later founded the Department of Machine Intelligence and Perception at the University of Edinburgh), remembers Turing talking often about the possibility of computing machines (1) learning from experience and (2) solving problems by means of searching through the space of possible solutions, guided by rule-of-thumb principles (Michie in interview with Copeland, 1995). The modern term for the latter idea is ‘heuristic search’, a heuristic being any rule-of-thumb principle that cuts down the amount of searching required in order to find a solution to a problem. At Bletchley Park Turing illustrated his ideas on machine智能 by reference to chess. Michie recalls Turing experimenting with heuristics that later became common in chess programming (in particular minimax and best-first).
战时岁月中,图灵确实对机器智能问题给予了大量思考。布莱切利园的同事们回忆起与他多次在下班时间讨论这一话题,图灵曾一度传阅一份打字报告(现已遗失)阐述他的一些想法。其中一位同事唐纳德 · 米奇(Donald Michie,后创立爱丁堡大学机器智能与感知系)记得图灵经常谈论计算机器的可能性:(1) 从经验中学习,(2) 通过在有解空间中搜索来解决问题,由经验法则指导(米奇 1995 年接受 Copeland 采访时所述)。后者的现代术语是"启发式搜索",启发式是指任何减少寻找问题解所需搜索量的经验法则。在布莱切利园,图灵以国际象棋为例说明他对机器智能的想法。米奇回忆图灵曾实验后来在国际象棋编程中常见的启发式方法(特别是极小化极大法和最佳优先法)。
Further information about Turing and the computer, including his wartime work on codebreaking and his thinking about artificial intelligence and artificial life, can be found in Copeland 2004.
关于图灵与计算机的更多信息,包括他战时破译密码的工作以及他对人工智能和人工生命的思考,可参见 Copeland 2004。
Electromechanical versus Electronic Computation
机电与电子计算
With some exceptions — including Babbage’s purely mechanical engines, and the finger-powered National Accounting Machine - early digital computing machines were electromechanical. That is to say, their basic components were small, electrically-driven, mechanical switches called ‘relays’. These operate relatively slowly, whereas the basic components of an electronic computer — originally vacuum tubes (valves) — have no moving parts save electrons and so operate extremely fast. Electromechanical digital computing machines were built before and during the second world war by (among others) Howard Aiken at Harvard University, George Stibitz at Bell Telephone Laboratories, Turing at Princeton University and Bletchley Park, and Konrad Zuse in Berlin. To Zuse belongs the honour of having built the first working general-purpose program-controlled digital computer. This machine, later called the Z3, was functioning in 1941. (A program-controlled computer, as opposed to a stored-program computer, is set up for a new task by re-routing wires, by means of plugs etc.)
除少数例外——包括巴贝奇纯机械引擎和手指驱动的国民会计机——早期数字计算机器是机电式的。也就是说,它们的基本部件是称为"继电器"的小型电动机械开关。这些开关运行相对较慢,而电子计算机的基本部件——最初是真空管(电子管)——除电子外没有活动部件,因此运行极快。机电数字计算机器在二战前和二战期间由(其中包括)哈佛大学的霍华德 · 艾肯(Howard Aiken)、贝尔电话实验室的乔治 · 斯蒂比茨(George Stibitz)、普林斯顿大学和布莱切利园的图灵,以及柏林的康拉德 · 楚泽(Konrad Zuse)建造。楚泽享有建造第一台可工作的通用程序控制数字计算机的荣誉。这台机器后来称为 Z3,于 1941 年投入运行。(程序控制计算机与存储程序计算机不同,前者通过重新布线、使用插头等为新任务进行设置。)
Relays were too slow and unreliable a medium for large-scale general-purpose digital computation (although Aiken made a valiant effort). It was the development of high-speed digital techniques using vacuum tubes that made the modern computer possible.
继电器作为大规模通用数字计算的介质太慢且不可靠(尽管艾肯做了英勇努力)。正是使用真空管的高速数字技术的发展使现代计算机成为可能。
The earliest extensive use of vacuum tubes for digital data-processing appears to have been by the engineer Thomas Flowers, working in London at the British Post Office Research Station at Dollis Hill. Electronic equipment designed by Flowers in 1934, for controlling the connections between telephone exchanges, went into operation in 1939, and involved between three and four thousand vacuum tubes running continuously. In 1938–1939 Flowers worked on an experimental electronic digital data-processing system, involving a high-speed data store. Flowers’ aim, achieved after the war, was that electronic equipment should replace existing, less reliable, systems built from relays and used in telephone exchanges. Flowers did not investigate the idea of using electronic equipment for numerical calculation, but has remarked that at the outbreak of war with Germany in 1939 he was possibly the only person in Britain who realized that vacuum tubes could be used on a large scale for high-speed digital computation. (See Copeland 2006 for m more information on Flowers’ work.)
真空管最早广泛用于数字数据处理似乎是由工程师托马斯 · 弗劳尔斯(Thomas Flowers)完成的,他在伦敦多利斯山的英国邮政总局研究站工作。弗劳尔斯 1934 年设计的用于控制电话交换局之间连接的电子设备于 1939 年投入运行,涉及 3000 至 4000 根连续运行的真空管。1938–1939 年,弗劳尔斯致力于一个实验性电子数字数据处理系统,涉及高速数据存储器。弗劳尔斯的目标——战后得以实现——是使电子设备取代现有的、可靠性较低的、由继电器构成并用于电话交换局的系统。弗劳尔斯没有研究使用电子设备进行数值计算的想法,但他曾评论说,1939 年对德战争爆发时,他可能是英国唯一意识到真空管可大规模用于高速数字计算的人。(关于弗劳尔斯工作的更多信息,参见 Copeland 2006。)
Atanasoff
阿塔纳索夫
The earliest comparable use of vacuum tubes in the U.S. seems to have been by John Atanasoff at what was then Iowa State College (now University). During the period 1937–1942 Atanasoff developed techniques for using vacuum tubes to perform numerical calculations digitally. In 1939, with the assistance of his student Clifford Berry, Atanasoff began building what is sometimes called the Atanasoff-Berry Computer, or ABC, a small-scale special-purpose electronic digital machine for the solution of systems of linear algebraic equations. The machine contained approximately 300 vacuum tubes. Although the electronic part of the machine functioned successfully, the computer as a whole never worked reliably, errors being introduced by the unsatisfactory binary card-reader. Work was discontinued in 1942 when Atanasoff left Iowa State.
美国最早可比拟的真空管使用似乎是由约翰 · 阿塔纳索夫(John Atanasoff)在当时的艾奥瓦州立学院(今大学)完成的。1937–1942 年期间,阿塔纳索夫发展了使用真空管进行数字数值计算的技术。1939 年,在其学生克利福德 · 贝里(Clifford Berry)的协助下,阿塔纳索夫开始建造有时称为阿塔纳索夫-贝里计算机(Atanasoff-Berry Computer)或 ABC 的机器,这是一台小型专用电子数字机器,用于求解线性代数方程组。该机器包含约 300 根真空管。尽管机器的电子部分成功运行,但整台计算机从未可靠工作,不令人满意的二进制卡片读入器引入了错误。1942 年阿塔纳索夫离开艾奥瓦州立大学时,工作中止。
Colossus
巨人机
The first fully functioning electronic digital computer was Colossus, used by the Bletchley Park cryptanalysts from February 1944.
第一台完全可运行的电子数字计算机是巨人机(Colossus),自 1944 年 2 月起由布莱切利园的密码分析员使用。
From very early in the war the Government Code and Cypher School (GC&CS) was successfully deciphering German radio communications encoded by means of the Enigma system, and by early 1942 about 39,000 intercepted messages were being decoded each month, thanks to electromechanical machines known as ‘bombes’. These were designed by Turing and Gordon Welchman (building on earlier work by Polish cryptanalysts).
战争初期,政府密码学校(GC&CS)就成功地破译了使用恩尼格玛(Enigma)系统加密的德国无线电通信,到 1942 年初,每月约有 39,000 条截获信息被破译,这归功于称为"炸弹"(bombes)的机电机器。这些机器由图灵和戈登 · 韦尔奇曼(Gordon Welchman)设计(基于波兰密码分析员的前期工作)。
During the second half of 1941, messages encoded by means of a totally different method began to be intercepted. This new cipher machine, code-named ‘Tunny’ by Bletchley Park, was broken in April 1942 and current traffic was read for the first time in July of that year. Based on binary teleprinter code, Tunny was used in preference to Morse-based Enigma for the encryption of high-level signals, for example messages from Hitler and members of the German High Command.
1941 年下半年,开始截获用完全不同方法加密的信息。这台新的密码机被布莱切利园代号为"金枪鱼"(Tunny),于 1942 年 4 月被攻破,同年 7 月首次读出当前通信。金枪鱼基于二进制电传打字机代码,优先于基于莫尔斯电码的恩尼格玛用于高级信号的加密,例如来自希特勒和德国最高统帅部成员的消息。
The need to decipher this vital intelligence as rapidly as possible led Max Newman to propose in November 1942 (shortly after his recruitment to GC&CS from Cambridge University) that key parts of the decryption process be automated, by means of high-speed electronic counting devices. The first machine designed and built to Newman’s specification, known as the Heath Robinson, was relay-based with electronic circuits for counting. (The electronic counters were designed by C.E. Wynn-Williams, who had been using thyratron tubes in counting circuits at the Cavendish Laboratory, Cambridge, since 1932 [Wynn-Williams 1932].) Installed in June 1943, Heath Robinson was unreliable and slow, and its high-speed paper tapes were continually breaking, but it proved the worth of Newman’s idea. Flowers recommended that an all-electronic machine be built instead, but he received no official encouragement from GC&CS. Working independently at the Post Office Research Station at Dollis Hill, Flowers quietly got on with constructing the world’s first large-scale programmable electronic digital computer. Colossus I was delivered to Bletchley Park in January 1943.
尽快破译这一重要情报的需要使马克斯 · 纽曼于 1942 年 11 月(他从剑桥大学被招募到 GC&CS 后不久)提议通过高速电子计数装置将解密过程的关键部分自动化。第一台按照纽曼规格设计和建造的机器称为希思 · 鲁滨逊(Heath Robinson),采用继电器并带有电子计数电路。(电子计数器由 C.E. 温-威廉斯设计,他自 1932 年起就在剑桥卡文迪许实验室使用闸流管计数电路 [Wynn-Williams 1932]。)希思 · 鲁滨逊于 1943 年 6 月安装,它不可靠且速度慢,高速纸带不断断裂,但它证明了纽曼想法的价值。弗劳尔斯建议建造一台全电子机器,但未获得 GC&CS 的官方支持。弗劳尔斯在多利斯山邮政总局研究站独立工作,悄然着手建造世界上第一台大规模可编程电子数字计算机。巨人机 I 号于 1943 年 1 月交付布莱切利园。
By the end of the war there were ten Colossi working round the clock at Bletchley Park. From a cryptanalytic viewpoint, a major difference between the prototype Colossus I and the later machines was the addition of the so-called Special Attachment, following a key discovery by cryptanalysts Donald Michie and Jack Good. This broadened the function of Colossus from ‘wheel setting’ — i.e., determining the settings of the encoding wheels of the Tunny machine for a particular message, given the ‘patterns’ of the wheels — to ‘wheel breaking’, i.e., determining the wheel patterns themselves. The wheel patterns were eventually changed daily by the Germans on each of the numerous links between the German Army High Command and Army Group commanders in the field. By 1945 there were as many 30 links in total. About ten of these were broken and read regularly.
战争结束时,布莱切利园有 10 台巨人机日夜工作。从密码分析角度看,原型巨人机 I 号与后来机器的一个主要区别是所谓"特殊附件"的增加,这是继密码分析员唐纳德 · 米奇和杰克 · 古德(Jack Good)的关键发现之后添加的。这将巨人机的功能从"轮设置"——即给定轮子的"模式"后,确定金枪鱼机器在特定信息中的编码轮设置——扩展到"破轮",即确定轮子模式本身。德国最高统帅部与野战集团军指挥官之间的众多通信线路中,每条线路的轮子模式最终被德国人每天更换。到 1945 年,总共有约 30 条线路。其中约 10 条被定期攻破和阅读。
Colossus I contained approximately 1600 vacuum tubes and each of the subsequent machines approximately 2400 vacuum tubes. Like the smaller ABC, Colossus lacked two important features of modern computers. First, it had no internally stored programs. To set it up for a new task, the operator had to alter the machine’s physical wiring, using plugs and switches. Second, Colossus was not a general-purpose machine, being designed for a specific cryptanalytic task involving counting and Boolean operations.
巨人机 I 号包含约 1600 根真空管,后续每台机器约 2400 根真空管。与较小的 ABC 一样,巨人机缺少现代计算机的两个重要特征。首先,它没有内部存储程序。要将其设置为新任务,操作员必须使用插头和开关改变机器的物理线路。其次,巨人机不是通用机器,而是为涉及计数和布尔运算的特定密码分析任务设计的。
F.H. Hinsley, official historian of GC&CS, has estimated that the war in Europe was shortened by at least two years as a result of the signals intelligence operation carried out at Bletchley Park, in which Colossus played a major role. Most of the Colossi were destroyed once hostilities ceased. Some of the electronic panels ended up at Newman’s Computing Machine Laboratory in Manchester (see below), all trace of their original use having been removed. Two Colossi were retained by GC&CS (renamed GCHQ following the end of the war). The last Colossus is believed to have stopped running in 1960.
GC&CS 的官方历史学家 F.H. 欣斯利(F.H. Hinsley)估计,由于在布莱切利园进行的信号情报行动(其中巨人机发挥了重要作用),欧洲战争至少缩短了两年。敌对行动停止后,大多数巨人机被销毁。一些电子面板最终流入纽曼在曼彻斯特的计算机器实验室(见下文),其原始用途的所有痕迹都被抹去。GC&CS(战后更名为 GCHQ)保留了两台巨人机。最后一台巨人机据信于 1960 年停止运行。
Those who knew of Colossus were prohibited by the Official Secrets Act from sharing their knowledge. Until the 1970s, few had any idea that electronic computation had been used successfully during the second world war. In 1970 and 1975, respectively, Good and Michie published notes giving the barest outlines of Colossus. By 1983, Flowers had received clearance from the British Government to publish a partial account of the hardware of Colossus I. Details of the later machines and of the Special Attachment, the uses to which the Colossi were put, and the cryptanalytic algorithms that they ran, have only recently been declassified. (For the full account of Colossus and the attack on Tunny see Copeland 2006.)
了解巨人机的人被《官方保密法》禁止分享其知识。直到 1970 年代,很少有人知道电子计算在二战期间已成功使用。古德和米奇分别于 1970 年和 1975 年发表了笔记,给出了巨人机的最简略轮廓。到 1983 年,弗劳尔斯获得英国政府批准,可发表关于巨人机 I 号硬件的部分描述。后来机器的详情、特殊附件、巨人机的用途以及它们运行的密码分析算法,直到最近才解密。(关于巨人机和对金枪鱼攻击的完整描述,参见 Copeland 2006。)
To those acquainted with the universal Turing machine of 1936, and the associated stored-program concept, Flowers’ racks of digital electronic equipment were proof of the feasibility of using large numbers of vacuum tubes to implement a high-speed general-purpose stored-program computer. The war over, Newman lost no time in establishing the Royal Society Computing Machine Laboratory at Manchester University for precisely that purpose. A few months after his arrival at Manchester, Newman wrote as follows to the Princeton mathematician John von Neumann (February 1946):
对于熟悉 1936 年通用图灵机及相关存储程序概念的人来说,弗劳尔斯的数字电子设备架证明了使用大量真空管实现高速通用存储程序计算机的可行性。战争一结束,纽曼立即在曼彻斯特大学建立皇家学会计算机器实验室,正是为此目的。抵达曼彻斯特几个月后,纽曼于 1946 年 2 月致信普林斯顿数学家约翰 · 冯 · 诺伊曼(John von Neumann):
I am … hoping to embark on a computing machine section here, having got very interested in electronic devices of this kind during the last two or three years. By about eighteen months ago I had decided to try my hand at starting up a machine unit when I got out. … I am of course in close touch with Turing.
我……希望在这里着手建立一个计算机器部门,在过去两三年里我对这类电子设备非常感兴趣。大约 18 个月前,我决定在出去后尝试建立一个机器单元。……我当然与图灵保持密切联系。
Turing’s Automatic Computing Engine
图灵的自动计算引擎
Turing and Newman were thinking along similar lines. In 1945 Turing joined the National Physical Laboratory (NPL) in London, his brief to design and develop an electronic stored-program digital computer for scientific work. (Artificial Intelligence was not far from Turing’s thoughts: he described himself as ‘building a brain’ and remarked in a letter that he was ‘more interested in the possibility of producing models of the action of the brain than in the practical applications to computing’.) John Womersley, Turing’s immediate superior at NPL, christened Turing’s proposed machine the Automatic Computing Engine, or ACE, in homage to Babbage’s Difference Engine and Analytical Engine.
图灵和纽曼的思路相似。1945 年,图灵加入伦敦国家物理实验室(NPL),其任务是为科学工作设计并开发电子存储程序数字计算机。(人工智能离图灵的想法不远:他形容自己"在建造一个大脑",并在信中评论说"我对制造大脑活动模型的可能性比对计算的实际应用更感兴趣"。)图灵在 NPL 的直属上级约翰 · 沃默斯利(John Womersley)将图灵提议的机器命名为自动计算引擎(Automatic Computing Engine,ACE),以向巴贝奇的差分机和分析机致敬。
Turing’s 1945 report ‘Proposed Electronic Calculator’ gave the first relatively complete specification of an electronic stored-program general-purpose digital computer. The report is reprinted in full in Copeland 2005.
图灵 1945 年的报告《提议的电子计算器》(“Proposed Electronic Calculator”)首次给出了电子存储程序通用数字计算机的相对完整规格。该报告全文重印于 Copeland 2005。
The first electronic stored-program digital computer to be proposed in the U.S. was the EDVAC (see below). The ‘First Draft of a Report on the EDVAC’ (May 1945), composed by von Neumann, contained little engineering detail, in particular concerning electronic hardware (owing to restrictions in the U.S.). Turing’s ‘Proposed Electronic Calculator’, on the other hand, supplied detailed circuit designs and specifications of hardware units, specimen programs in machine code, and even an estimate of the cost of building the machine (£11,200). ACE and EDVAC differed fundamentally from one another; for example, ACE employed distributed processing, while EDVAC had a centralised structure.
美国提议的第一台电子存储程序数字计算机是 EDVAC(见下文)。冯 · 诺伊曼撰写的《关于 EDVAC 的报告初稿》(“First Draft of a Report on the EDVAC”,1945 年 5 月)包含很少的工程细节,特别是关于电子硬件的细节(由于美国的限制)。另一方面,图灵的《提议的电子计算器》提供了详细的电路设计和硬件单元规格、机器代码的示例程序,甚至建造机器的估计成本(11,200 英镑)。ACE 和 EDVAC 在根本上彼此不同;例如,ACE 采用分布式处理,而 EDVAC 采用集中式结构。
Turing saw that speed and memory were the keys to computing. Turing’s colleague at NPL, Jim Wilkinson, observed that Turing ‘was obsessed with the idea of speed on the machine’ [Copeland 2005, p. 2]. Turing’s design had much in common with today’s RISC architectures and it called for a high-speed memory of roughly the same capacity as an early Macintosh computer (enormous by the standards of his day). Had Turing’s ACE been built as planned it would have been in a different league from the other early computers. However, progress on Turing’s Automatic Computing Engine ran slowly, due to organisational difficulties at NPL, and in 1948 a ‘very fed up’ Turing (Robin Gandy’s description, in interview with Copeland, 1995) left NPL for Newman’s Computing Machine Laboratory at Manchester University. It was not until May 1950 that a small pilot model of the Automatic Computing Engine, built by Wilkinson, Edward Newman, Mike Woodger, and others, first executed a program. With an operating speed of 1 MHz, the Pilot Model ACE was for some time the fastest computer in the world.
图灵认为速度和存储器是计算的关键。图灵在 NPL 的同事吉姆 · 威尔金森(Jim Wilkinson)观察到,图灵"痴迷于机器速度的想法"[Copeland 2005,第 2 页]。图灵的设计与今天的 RISC 架构有很多共同之处,它要求的高速存储器容量大致与早期的麦金塔计算机相当(按当时的标准来说是巨大的)。如果图灵的 ACE 按计划建成,它将与其他早期计算机处于完全不同的级别。然而,由于 NPL 的组织困难,图灵自动计算引擎的进展缓慢,1948 年,"非常沮丧"的图灵(罗宾 · 甘迪的描述,1995 年接受 Copeland 采访时)离开 NPL 前往纽曼在曼彻斯特大学的计算机器实验室。直到 1950 年 5 月,由威尔金森、爱德华 · 纽曼、迈克 · 伍杰(Mike Woodger)等人建造的自动计算引擎的小型试点模型才首次执行程序。试点模型 ACE 的运行速度为 1 MHz,一度是世界上最快的计算机。
Sales of DEUCE, the production version of the Pilot Model ACE, were buoyant — confounding the suggestion, made in 1946 by the Director of the NPL, Sir Charles Darwin, that ‘it is very possible that … one machine would suffice to solve all the problems that are demanded of it from the whole country’ [Copeland 2005, p. 4]. The fundamentals of Turing’s ACE design were employed by Harry Huskey (at Wayne State University, Detroit) in the Bendix G15 computer (Huskey in interview with Copeland, 1998). The G15 was arguably the first personal computer; over 400 were sold worldwide. DEUCE and the G15 remained in use until about 1970. Another computer deriving from Turing’s ACE design, the MOSAIC, played a role in Britain’s air defences during the Cold War period; other derivatives include the Packard-Bell PB250 (1961). (More information about these early computers is given in [Copeland 2005].)
试点模型 ACE 的生产版本 DEUCE 的销售十分兴旺——这与 NPL 主任查尔斯 · 达尔文爵士 1946 年提出的建议相悖,他认为"很有可能……一台机器就足以解决全国要求它解决的所有问题"[Copeland 2005,第 4 页]。图灵 ACE 设计的基本原理被哈里 · 哈斯基(Harry Huskey,在底特律韦恩州立大学)用于 Bendix G15 计算机(哈斯基 1998 年接受 Copeland 采访时所述)。G15 可以说是第一台个人计算机;全球售出 400 多台。DEUCE 和 G15 一直使用到约 1970 年。另一台源自图灵 ACE 设计的计算机 MOSAIC,在冷战期间英国的防空系统中发挥了作用;其他衍生产品包括 Packard-Bell PB250(1961 年)。(关于这些早期计算机的更多信息,见 [Copeland 2005]。)
The Manchester Machine
曼彻斯特机
The earliest general-purpose stored-program electronic digital computer to work was built in Newman’s Computing Machine Laboratory at Manchester University. The Manchester ‘Baby’, as it became known, was constructed by the engineers F.C. Williams and Tom Kilburn, and performed its first calculation on 21 June 1948. The tiny program, stored on the face of a cathode ray tube, was just seventeen instructions long. A much enlarged version of the machine, with a programming system designed by Turing, became the world’s first commercially available computer, the Ferranti Mark I. The first to be completed was installed at Manchester University in February 1951; in all about ten were sold, in Britain, Canada, Holland and Italy.
最早可工作的通用存储程序电子数字计算机建于纽曼在曼彻斯特大学的计算机器实验室。这台被称为曼彻斯特"婴儿机"(Baby)的机器由工程师 F.C. 威廉斯(F.C. Williams)和汤姆 · 基尔伯恩(Tom Kilburn)建造,于 1948 年 6 月 21 日执行了首次计算。这个存储在阴极射线管表面的微小程序只有 17 条指令长。这台机器的一个大幅扩展版本,带有图灵设计的编程系统,成为世界上第一台商业可用计算机,即费兰蒂 Mark I(Ferranti Mark I)。第一台完成的机器于 1951 年 2 月安装在曼彻斯特大学;总共售出约 10 台,销往英国、加拿大、荷兰和意大利。
The fundamental logico-mathematical contributions by Turing and Newman to the triumph at Manchester have been neglected, and the Manchester machine is nowadays remembered as the work of Williams and Kilburn. Indeed, Newman’s role in the development of computers has never been sufficiently emphasised (due perhaps to his thoroughly self-effacing way of relating the relevant events).
图灵和纽曼对曼彻斯特胜利的根本性逻辑数学贡献被忽视了,如今曼彻斯特机被铭记为威廉斯和基尔伯恩的作品。事实上,纽曼在计算机发展中的作用从未得到充分强调(或许由于他讲述相关事件时完全谦逊的方式)。
It was Newman who, in a lecture in Cambridge in 1935, introduced Turing to the concept that led directly to the Turing machine: Newman defined a constructive process as one that a machine can carry out (Newman in interview with Evans, op. cit.). As a result of his knowledge of Turing’s work, Newman became interested in the possibilities of computing machinery in, as he put it, ‘a rather theoretical way’. It was not until Newman joined GC&CS in 1942 that his interest in计算机器突然变得实际, with his realisation that the attack on Tunny could be mechanised. During the building of Colossus, Newman tried to interest Flowers in Turing’s 1936 paper — birthplace of the stored-program concept - but Flowers did not make much of Turing’s arcane notation. There is no doubt that by 1943, Newman had firmly in mind the idea of using electronic technology in order to construct a stored-program general-purpose digital computing machine.
正是纽曼在 1935 年剑桥的一次讲座中,向图灵介绍了直接导致图灵机诞生的概念:纽曼将构造性过程定义为 机器 可以执行的过程(纽曼在接受 Evans 采访时,同上)。由于对图灵工作的了解,纽曼对计算机器的可能性产生了兴趣,用他的话说,是以"一种相当理论的方式"。直到 1942 年纽曼加入 GC&CS,他对计算机器的兴趣才突然变得实际,他意识到对金枪鱼的攻击可以机械化。在建造巨人机期间,纽曼试图让弗劳尔斯对图灵 1936 年的论文——存储程序概念的发源地——产生兴趣,但弗劳尔斯对图灵深奥的符号学没太在意。毫无疑问,到 1943 年,纽曼已牢固确立了使用电子技术建造存储程序通用数字计算机器的想法。
In July of 1946 (the month in which the Royal Society approved Newman’s application for funds to found the Computing Machine Laboratory), Freddie Williams, working at the Telecommunications Research Establishment, Malvern, began the series of experiments on cathode ray tube storage that was to lead to the Williams tube memory. Williams, until then a radar engineer, explains how it was that he came to be working on the problem of computer memory:
1946 年 7 月(皇家学会批准纽曼建立计算机器实验室资金申请的当月),在马尔文电信研究 Establishment 工作的弗雷迪 · 威廉斯(Freddie Williams)开始了关于阴极射线管存储的一系列实验,这将导致威廉斯管存储器的诞生。此前一直担任雷达工程师的威廉斯解释了他如何开始研究计算机存储器问题:
[O]nce [the German Armies] collapsed … nobody was going to care a toss about radar, and people like me … were going to be in the soup unless we found something else to do. And computers were in the air. Knowing absolutely nothing about them I latched onto the problem of storage and tackled that. (Quoted in Bennett 1976.)
“[德国军队]一旦崩溃……就没有人会再关心雷达了,像我这样的人……除非找到别的事做,否则就要倒霉了。而计算机正炙手可热。对它们一无所知的我,抓住了存储问题并着手解决。”(引自 Bennett 1976。)
Newman learned of Williams’ work, and with the able help of Patrick Blackett, Langworthy Professor of Physics at Manchester and one of the most powerful figures in the University, was instrumental in the appointment of the 35 year old Williams to the recently vacated Chair of Electro-Technics at Manchester. (Both were members of the appointing committee (Kilburn in interview with Copeland, 1997).) Williams immediately had Kilburn, his assistant at Malvern, seconded to Manchester. To take up the story in Williams’ own words:
纽曼得知了威廉斯的工作,并在曼彻斯特大学朗沃西物理学教授、该校最有权势的人物之一帕特里克 · 布莱克特(Patrick Blackett)的有力帮助下,促成了 35 岁的威廉斯被任命到曼彻斯特最近空缺的电技术教授职位。(两人都是任命委员会的成员(基尔伯恩 1997 年接受 Copeland 采访时所述)。)威廉斯立即将他在马尔文的助手基尔伯恩借调到曼彻斯特。用威廉斯自己的话继续说:
[N]either Tom Kilburn nor I knew the first thing about computers when we arrived in Manchester University. We’d had enough explained to us to understand what the problem of storage was and what we wanted to store, and that we’d achieved, so the point now had been reached when we’d got to find out about computers … Newman explained the whole business of how a computer works to us. (F.C. Williams in interview with Evans [1976])
“汤姆 · 基尔伯恩和我刚到曼彻斯特大学时,对计算机一无所知。我们已得到足够多的解释,理解了存储问题是什么以及我们想存储什么,而且我们已经实现了这一点,所以现在已经到了必须了解计算机的时候了……纽曼向我们解释了计算机如何工作的全部业务。”(F.C. Williams 接受 Evans [1976] 采访时)
Elsewhere Williams is explicit concerning Turing’s role and gives something of the flavour of the explanation that he and Kilburn received:
在别处,威廉斯明确提到了图灵的作用,并给出了他和基尔伯恩所接受的解释的一些风味:
Tom Kilburn and I knew nothing about computers, but a lot about circuits. Professor Newman and Mr A.M. Turing … knew a lot about computers and substantially nothing about electronics. They took us by the hand and explained how numbers could live in houses with addresses and how if they did they could be kept track of during a calculation. (Williams [1975], p. 328)
“汤姆 · 基尔伯恩和我不了解计算机,但很懂电路。纽曼教授和 A.M. 图灵先生……很懂计算机,但基本上不懂电子学。他们拉着我们的手,解释了数字如何可以住在有地址的房子里,如果这样做,如何在计算过程中跟踪它们。”(Williams [1975],第 328 页)
It seems that Newman must have used much the same words with Williams and Kilburn as he did in an address to the Royal Society on 4th March 1948:
看来纽曼对威廉斯和基尔伯恩使用的措辞,与他在 1948 年 3 月 4 日对皇家学会的致辞中使用的非常相似:
Professor Hartree … has recalled that all the essential ideas of the general-purpose calculating machines now being made are to be found in Babbage’s plans for his analytical engine. In modern times the idea of a universal calculating machine was independently introduced by Turing … [T]he machines now being made in America and in this country … [are] in certain general respects … all similar. There is provision for storing numbers, say in the scale of 2, so that each number appears as a row of, say, forty 0’s and 1’s in certain places or “houses” in the machine. … Certain of these numbers, or “words” are read, one after another, as orders. In one possible type of machine an order consists of four numbers, for example 11, 13, 27, 4. The number 4 signifies “add”, and when control shifts to this word the “houses” H11 and H13 will be connected to the adder as inputs, and H27 as output. The numbers stored in H11 and H13 pass through the adder, are added, and the sum is passed on to H27. The control then shifts to the next order. In most real machines the process just described would be done by three separate orders, the first bringing [H11] (=content of H11) to a central accumulator, the second adding [H13] into the accumulator, and the third sending the result to H27; thus only one address would be required in each order. … A machine with storage, with this automatic-telephone-exchange arrangement and with the necessary adders, subtractors and so on, is, in a sense, already a universal machine. (Newman [1948], pp. 271–272)
“哈特里教授……曾回忆,现在制造的通用计算机器的所有基本思想都可以在巴贝奇分析机的计划中找到。在现代,通用计算机器的思想由图灵独立提出……[美国]和[本国]现在正在制造的机器……在某些一般方面……都是相似的。有存储数字的装置,比如说以 2 为基数,使每个数字在机器的某些位置或"房子"中显示为一行,比如说 40 个 0 和 1……这些数字或"字"中的某些被依次读出,作为指令。在一种可能的机器类型中,一条指令由四个数字组成,例如 11, 13, 27, 4。数字 4 表示"加”,当控制转移到这个字时,“房子"H11 和 H13 将作为输入连接到加法器,H27 作为输出。存储在 H11 和 H13 中的数字通过加法器,相加,和传递给 H27。然后控制转移到下一条指令。在大多数实际机器中,刚才描述的过程将由三条独立指令完成,第一条将 [H11](= H11 的内容)带到中央累加器,第二条将 [H13] 加到累加器中,第三条将结果发送到 H27;因此每条指令只需要一个地址……具有存储器、具有这种自动电话交换安排以及具有必要的加法器、减法器等的机器,在某种意义上已经是一台通用机器。”(Newman [1948],第 271–272 页)
Following this explanation of Turing’s three-address concept (source 1, source 2, destination, function) Newman went on to describe program storage (‘the orders shall be in a series of houses X1, X2, …’) and conditional branching. He then summed up:
在解释了图灵的三地址概念(源 1、源 2、目的地、功能)之后,纽曼继续描述程序存储(“指令应在一系列房子 X1, X2, …… 中”)和条件分支。然后他总结道:
From this highly simplified account it emerges that the essential internal parts of the machine are, first, a storage for numbers (which may also be orders). … Secondly, adders, multipliers, etc. Thirdly, an “automatic telephone exchange” for selecting “houses”, connecting them to the arithmetic organ, and writing the answers in other prescribed houses. Finally, means of moving control at any stage to any chosen order, if a certain condition is satisfied, otherwise passing to the next order in the normal sequence. Besides these there must be ways of setting up the machine at the outset, and extracting the final answer in useable form. (Newman [1948], pp. 273–4)
“从这个高度简化的描述中可以看出,机器的基本内部部件首先是数字存储器(也可以是指令)。……其次是加法器、乘法器等。第三,用于选择"房子”、将它们连接到算术器官、并将答案写入其他指定房子的"自动电话交换"。最后,如果在任何阶段满足某个条件,则将控制转移到任何选定指令的手段,否则按正常顺序传递到下一条指令。除此之外,还必须有在开始时设置机器的方法,以及以可用形式提取最终答案的方法。"(Newman [1948],第 273–4 页)
In a letter written in 1972 Williams described in some detail what he and Kilburn were told by Newman:
在 1972 年写的一封信中,威廉斯详细描述了他和基尔伯恩从纽曼那里听到的内容:
About the middle of the year [1946] the possibility of an appointment at Manchester University arose and I had a talk with Professor Newman who was already interested in the possibility of developing computers and had acquired a grant from the Royal Society of £30,000 for this purpose. Since he understood computers and I understood electronics the possibilities of fruitful collaboration were obvious. I remember Newman giving us a few lectures in which he outlined the organisation of a computer in terms of numbers being identified by the address of the house in which they were placed and in terms of numbers being transferred from this address, one at a time, to an accumulator where each entering number was added to what was already there. At any time the number in the accumulator could be transferred back to an assigned address in the store and the accumulator cleared for further use. The transfers were to be effected by a stored program in which a list of instructions was obeyed sequentially. Ordered progress through the list could be interrupted by a test instruction which examined the sign of the number in the accumulator. Thereafter operation started from a new point in the list of instructions. This was the first information I received about the organisation of computers. … Our first computer was the simplest embodiment of these principles, with the sole difference that it used a subtracting rather than an adding accumulator. (Letter from Williams to Randell, 1972; in Randell [1972], p. 9)
“大约在 [1946 年] 年中,出现了在曼彻斯特大学任职的可能性,我与纽曼教授进行了交谈,他那时已经对开发计算机的可能性感兴趣,并已从皇家学会获得 30,000 英镑的资助用于此目的。由于他懂计算机而我懂电子学,富有成效合作的可能性是显而易见的。我记得纽曼给我们做了几次讲座,他在讲座中概述了计算机的组织结构,即数字通过它们所在房子的地址来识别,数字从这个地址一次一个地转移到累加器,在那里每个进入的数字被加到已有的数字上。任何时候,累加器中的数字都可以转移回存储器中指定的地址,累加器被清空以供进一步使用。转移将由存储程序实现,其中一系列指令被顺序执行。通过列表的有序进行可以被一条测试指令中断,该指令检查累加器中数字的符号。此后操作从指令列表的新点开始。这是我收到的关于计算机组织的第一个信息。……我们的第一台计算机是这些原理的最简单体现,唯一的区别是它使用减法累加器而不是加法累加器。”(威廉斯致兰德尔的信,1972 年;见 Randell [1972],第 9 页)
Turing’s early input to the developments at Manchester, hinted at by Williams in his above-quoted reference to Turing, may have been via the lectures on computer design that Turing and Wilkinson gave in London during the period December 1946 to February 1947 (Turing and Wilkinson [1946–7]). The lectures were attended by representatives of various organisations planning to use or build an electronic computer. Kilburn was in the audience (Bowker and Giordano [1993]). (Kilburn usually said, when asked from where he obtained his basic knowledge of the computer, that he could not remember (letter from Brian Napper to Copeland, 2002); for example, in a 1992 interview he said: ‘Between early 1945 and early 1947, in that period, somehow or other I knew what a digital computer was … Where I got this knowledge from I’ve no idea’ (Bowker and Giordano [1993], p. 19).)
图灵对曼彻斯特发展的早期投入,在威廉斯上述提及图灵的引文中有所暗示,可能是通过图灵和威尔金森于 1946 年 12 月至 1947 年 2 月期间在伦敦所做的计算机设计讲座(Turing and Wilkinson [1946–7])。这些讲座有计划使用或建造电子计算机的各个组织的代表参加。基尔伯恩也在听众中(Bowker and Giordano [1993])。(当被问及他从哪里获得计算机的基本知识时,基尔伯恩通常说他记不清了(Brian Napper 2002 年致 Copeland 的信);例如,在 1992 年的一次采访中他说:“1945 年初到 1947 年初,在那段时期,不知怎么的我知道数字计算机是什么……我从哪里获得这些知识的,我毫无头绪”(Bowker and Giordano [1993],第 19 页)。)
Whatever role Turing’s lectures may have played in informing Kilburn, there is little doubt that credit for the Manchester computer — called the ‘Newman-Williams machine’ in a contemporary document (Huskey 1947) — belongs not only to Williams and Kilburn but also to Newman, and that the influence on Newman of Turing’s 1936 paper was crucial, as was the influence of Flowers’ Colossus.
无论图灵的讲座在向基尔伯恩传授知识方面发挥了什么作用,毫无疑问,曼彻斯特计算机——在一份当时的文件中称为"纽曼-威廉斯机器"(Huskey 1947)——的荣誉不仅属于威廉斯和基尔伯恩,也属于纽曼,而且图灵 1936 年论文对纽曼的影响至关重要,正如弗劳尔斯的巨人机的影响一样。
The first working AI program, a draughts (checkers) player written by Christopher Strachey, ran on the Ferranti Mark I in the Manchester Computing Machine Laboratory. Strachey (at the time a teacher at Harrow School and an amateur programmer) wrote the program with Turing’s encouragement and utilising the latter’s recently completed Programmers’ Handbook for the Ferranti. (Strachey later became Director of the Programming Research Group at Oxford University.) By the summer of 1952, the program could, Strachey reported, ‘play a complete game of draughts at a reasonable speed’. (Strachey’s program formed the basis for Arthur Samuel’s well-known checkers program.) The first chess-playing program, also, was written for the Manchester Ferranti, by Dietrich Prinz; the program first ran in November 1951. Designed for solving simple problems of the mate-in-two variety, the program would examine every possible move until a solution was found. Turing started to program his ‘Turochamp’ chess-player on the Ferranti Mark I, but never completed the task. Unlike Prinz’s program, the Turochamp could play a complete game (when hand-simulated) and operated not by exhaustive search but under the guidance of heuristics.
第一个可工作的人工智能程序,一个由克里斯托弗 · 斯特拉奇(Christopher Strachey)编写的跳棋程序,在曼彻斯特计算机器实验室的费兰蒂 Mark I 上运行。斯特拉奇(当时是哈罗学校的教师和业余程序员)在图灵的鼓励下编写了该程序,并利用了后者刚完成的费兰蒂编程手册。(斯特拉奇后来成为牛津大学编程研究组的主任。)到 1952 年夏天,据斯特拉奇报告,该程序"能以合理的速度下一整盘跳棋"。(斯特拉奇的程序构成了亚瑟 · 塞缪尔(Arthur Samuel)著名的跳棋程序的基础。)第一个国际象棋程序也是为曼彻斯特费兰蒂编写的,由迪特里希 · 普林茨(Dietrich Prinz)编写;该程序于 1951 年 11 月首次运行。该程序设计用于解决简单的两步将死问题,它会检查每一步可能的走法直到找到解决方案。图灵开始在费兰蒂 Mark I 上编程他的"Turochamp"国际象棋程序,但从未完成这项任务。与普林茨的程序不同,Turochamp 能下一整盘棋(当用手模拟时),并且不是通过穷举搜索,而是在启发式的指导下运行。
ENIAC and EDVAC
ENIAC 与 EDVAC
The first fully functioning electronic digital computer to be built in the U.S. was ENIAC, constructed at the Moore School of Electrical Engineering, University of Pennsylvania, for the Army Ordnance Department, by J. Presper Eckert and John Mauchly. Completed in 1945, ENIAC was somewhat similar to the earlier Colossus, but considerably larger and more flexible (although far from general-purpose). The primary function for which ENIAC was designed was the calculation of tables used in aiming artillery. ENIAC was not a stored-program computer, and setting it up for a new job involved reconfiguring the machine by means of plugs and switches. For many years, ENIAC was believed to have been the first functioning electronic digital computer, Colossus being unknown to all but a few.
美国建造的第一台完全可运行的电子数字计算机是 ENIAC,由 J. 普雷斯珀 · 埃克特(J. Presper Eckert)和约翰 · 莫奇利(John Mauchly)在宾夕法尼亚大学摩尔电气工程学院为陆军军械部建造。ENIAC 于 1945 年完成,与早期的巨人机有些相似,但规模大得多且更灵活(尽管远非通用)。ENIAC 设计的主要功能是计算用于瞄准火炮的表格。ENIAC 不是存储程序计算机,为新任务设置它需要重新配置机器的线路。多年来,ENIAC 被认为是第一台可运行的电子数字计算机,而巨人机除少数人外不为人知。
In 1944, John von Neumann joined the ENIAC group. He had become ‘intrigued’ (Goldstine’s word, [1972], p. 275) with Turing’s universal machine while Turing was at Princeton University during 1936–1938. At the Moore School, von Neumann emphasised the importance of the stored-program concept for electronic computing, including the possibility of allowing the machine to modify its own program in useful ways while running (for example, in order to control loops and branching). Turing’s paper of 1936 (‘On Computable Numbers, with an Application to the Entscheidungsproblem’) was required reading for members of von Neumann’s post-war computer project at the Institute for Advanced Study, Princeton University (letter from Julian Bigelow to Copeland, 2002; see also Copeland [2004], p. 23). Eckert appears to have realised independently, and prior to von Neumann’s joining the ENIAC group, that the way to take full advantage of the speed at which data is processed by electronic circuits is to place suitably encoded instructions for controlling the processing in the same high-speed storage devices that hold the data itself (documented in Copeland [2004], pp. 26–7). In 1945, while ENIAC was still under construction, von Neumann produced a draft report, mentioned previously, setting out the ENIAC group’s ideas for an electronic stored-program general-purpose digital computer, the EDVAC (von Neuman [1945]). The EDVAC was completed six years later, but not by its originators, who left the Moore School to build computers elsewhere. Lectures held at the Moore School in 1946 on the proposed EDVAC were widely attended and contributed greatly to the dissemination of the new ideas.
1944 年,约翰 · 冯 · 诺伊曼(John von Neumann)加入 ENIAC 小组。1936–1938 年图灵在普林斯顿大学期间,冯 · 诺伊曼对图灵的通用机产生了"兴趣"(戈德斯廷的用语,[1972],第 275 页)。在摩尔学院,冯 · 诺伊曼强调了存储程序概念对电子计算的重要性,包括允许机器在运行时以有用的方式修改自身程序的可能性(例如,为了控制循环和分支)。图灵 1936 年的论文(《论可计算数及其在判定问题上的应用》)是普林斯顿大学高等研究院冯 · 诺伊曼战后计算机项目成员的必读材料(Julian Bigelow 2002 年致 Copeland 的信;另见 Copeland [2004],第 23 页)。埃克特似乎在冯 · 诺伊曼加入 ENIAC 小组之前,就独立意识到,充分利用电子电路处理数据速度的方法,是将适当编码的控制处理指令放在与数据本身相同的高速存储设备中(记载于 Copeland [2004],第 26–7 页)。1945 年,在 ENIAC 仍在建造期间,冯 · 诺伊曼撰写了一份前述的报告初稿,阐述了 ENIAC 小组关于电子存储程序通用数字计算机 EDVAC 的想法(von Neuman [1945])。EDVAC 于六年后完成,但不是由其创始者完成的,他们离开摩尔学院去别处建造计算机。1946 年在摩尔学院举行的关于拟议 EDVAC 的讲座广受关注,为新思想的传播做出了巨大贡献。
Von Neumann was a prestigious figure and he made the concept of a high-speed stored-program digital computer widely known through his writings and public addresses. As a result of his high profile in the field, it became customary, although historically inappropriate, to refer to electronic stored-program digital computers as ‘von Neumann machines’.
冯 · 诺伊曼是一位享有声望的人物,他通过著作和公开演讲使高速存储程序数字计算机的概念广为人知。由于他在该领域的崇高地位,尽管在历史上并不恰当,但将电子存储程序数字计算机称为"冯 · 诺伊曼机"已成为惯例。
The Los Alamos physicist Stanley Frankel, responsible with von Neumann and others for mechanising the large-scale calculations involved in the design of the atomic bomb, has described von Neumann’s view of the importance of Turing’s 1936 paper, in a letter:
洛斯阿拉莫斯物理学家斯坦利 · 弗兰克尔(Stanley Frankel)与冯 · 诺伊曼等人共同负责将原子弹设计涉及的大规模计算机械化,他在一封信中描述了冯 · 诺伊曼对图灵 1936 年论文重要性的看法:
I know that in or about 1943 or '44 von Neumann was well aware of the fundamental importance of Turing’s paper of 1936 … Von Neumann introduced me to that paper and at his urging I studied it with care. Many people have acclaimed von Neumann as the “father of the computer” (in a modern sense of the term) but I am sure that he would never have made that mistake himself. He might well be called the midwife, perhaps, but he firmly emphasized to me, and to others I am sure, that the fundamental conception is owing to Turing, in so far as not anticipated by Babbage … Both Turing and von Neumann, of course, also made substantial contributions to the “reduction to practice” of these concepts but I would not regard these as comparable in importance with the introduction and explication of the concept of a computer able to store in its memory its program of activities and of modifying that program in the course of these activities. (Quoted in Randell [1972], p. 10)
“我知道在 1943 年或 1944 年左右,冯 · 诺伊曼充分意识到图灵 1936 年论文的根本重要性……冯 · 诺伊曼向我介绍了那篇论文,并在他的敦促下我仔细研究了它。许多人称赞冯 · 诺伊曼为"计算机之父”(就现代意义而言),但我确信他自己绝不会犯那个错误。他或许可以被称为助产士,但他坚定地向我和其他人强调,基本概念归功于图灵,就巴贝奇未预见到的程度而言……当然,图灵和冯 · 诺伊曼也都为这些概念的"付诸实践"做出了重大贡献,但我不认为这些与引入和阐释能够在其存储器中存储活动程序并在活动过程中修改该程序的计算机概念的重要性相当。"(引自 Randell [1972],第 10 页)
Other Notable Early Computers
其他早期著名计算机
Other notable early stored-program electronic digital computers were:
其他著名的早期存储程序电子数字计算机有:
- EDSAC, 1949, built at Cambridge University by Maurice Wilkes
EDSAC,1949 年,由莫里斯 · 威尔克斯(Maurice Wilkes)在剑桥大学建造 - BINAC, 1949, built by Eckert’s and Mauchly’s Electronic Control Co., Philadelphia (opinions differ over whether BINAC ever actually worked)
BINAC,1949 年,由埃克特和莫奇利的电子控制公司在费城建造(关于 BINAC 是否曾真正工作,意见不一) - Whirlwind I, 1949, Digital Computer Laboratory, Massachusetts Institute of Technology, Jay Forrester
旋风 I 号(Whirlwind I),1949 年,麻省理工学院数字计算机实验室,杰伊 · 福雷斯特(Jay Forrester) - SEAC, 1950, US Bureau of Standards Eastern Division, Washington D.C., Samuel Alexander, Ralph Slutz
SEAC,1950 年,美国标准局东部分局,华盛顿特区,塞缪尔 · 亚历山大(Samuel Alexander)、拉尔夫 · 斯拉茨(Ralph Slutz) - SWAC, 1950, US Bureau of Standards Western Division, Institute for Numerical Analysis, University of California at Los Angeles, Harry Huskey
SWAC,1950 年,美国标准局西部分局,数值分析研究所,加州大学洛杉矶分校,哈里 · 哈斯基(Harry Huskey) - UNIVAC, 1951, Eckert-Mauchly Computer Corporation, Philadelphia (the first computer to be available commercially in the U.S.)
UNIVAC,1951 年,埃克特-莫奇利计算机公司,费城(美国第一台商业可用计算机) - the IAS computer, 1952, Institute for Advanced Study, Princeton University, Julian Bigelow, Arthur Burks, Herman Goldstine, von Neumann, and others (thanks to von Neumann’s publishing the specifications of the IAS machine, it became the model for a group of computers known as the Princeton Class machines; the IAS computer was also a strong influence on the IBM 701)
IAS 计算机,1952 年,普林斯顿大学高等研究院,朱利安 · 比奇洛(Julian Bigelow)、亚瑟 · 伯克斯(Arthur Burks)、赫尔曼 · 戈德斯廷(Herman Goldstine)、冯 · 诺伊曼等人(由于冯 · 诺伊曼发表了 IAS 机器的规格,它成为一组称为普林斯顿级机器的计算机的模型;IAS 计算机对 IBM 701 也有很大影响) - IBM 701, 1952, International Business Machine’s first mass-produced electronic stored-program computer.
IBM 701,1952 年,国际商业机器公司第一台大规模生产的电子存储程序计算机。
High-Speed Memory
高速存储器
The EDVAC and ACE proposals both advocated the use of mercury-filled tubes, called ‘delay lines’, for high-speed internal memory. This form of memory is known as acoustic memory. Delay lines had initially been developed for echo cancellation in radar; the idea of using them as memory devices originated with Eckert at the Moore School. Here is Turing’s description:
EDVAC 和 ACE 的提案都提倡使用称为"延迟线"的充汞管作为高速内部存储器。这种存储器形式称为声学存储器。延迟线最初是为雷达中的回波消除而开发的;将它们用作存储设备的想法起源于摩尔学院的埃克特。以下是图灵的描述:
It is proposed to build “delay line” units consisting of mercury … tubes about 5′ long and 1″ in diameter in contact with a quartz crystal at each end. The velocity of sound in … mercury … is such that the delay will be 1.024 ms. The information to be stored may be considered to be a sequence of 1024 ‘digits’ (0 or 1) … These digits will be represented by a corresponding sequence of pulses. The digit 0 … will be represented by the absence of a pulse at the appropriate time, the digit 1 … by its presence. This series of pulses is impressed on the end of the line by one piezo-crystal, it is transmitted down the line in the form of supersonic waves, and is reconverted into a varying voltage by the crystal at the far end. This voltage is amplified sufficiently to give an output of the order of 10 volts peak to peak and is used to gate a standard pulse generated by the clock. This pulse may be again fed into the line by means of the transmitting crystal, or we may feed in some altogether different signal. We also have the possibility of leading the gated pulse to some other part of the calculator, if we have need of that information at the time. Making use of the information does not of course preclude keeping it also. (Turing [1945], p. 375)
“提议建造由汞……组成的"延迟线"单元,管子长约 5 英尺,直径约 1 英寸,两端各与一块石英晶体接触。……汞……中的声速使得延迟将为 1.024 毫秒。要存储的信息可视为 1024 个"数字”(0 或 1)的序列……这些数字将由相应的脉冲序列表示。数字 0……将由适当时间没有脉冲表示,数字 1……由其存在表示。这一脉冲序列由一块压电晶体施加于线路末端,以超声波形式沿线传输,并由远端的晶体重新转换为变化的电压。该电压被充分放大,以产生约 10 伏峰峰值的输出,并用于选通时钟产生的标准脉冲。该脉冲可通过发射晶体再次馈入线路,或我们可以馈入完全不同的信号。如果当时需要该信息,我们也有可能将选通脉冲引向计算器的其他部分。利用信息当然不排除同时保存它。"(Turing [1945],第 375 页)
Mercury delay line memory was used in EDSAC, BINAC, SEAC, Pilot Model ACE, EDVAC, DEUCE, and full-scale ACE (1958). The chief advantage of the delay line as a memory medium was, as Turing put it, that delay lines were “already a going concern” (Turing [1947], p. 380). The fundamental disadvantages of the delay line were that random access is impossible and, moreover, the time taken for an instruction, or number, to emerge from a delay line depends on where in the line it happens to be.
汞延迟线存储器用于 EDSAC、BINAC、SEAC、试点模型 ACE、EDVAC、DEUCE 和全规模 ACE(1958 年)。延迟线作为存储介质的主要优势,正如图灵所说,是延迟线"已经是现成的东西"(Turing [1947],第 380 页)。延迟线的根本缺点是不可能随机访问,而且指令或数字从延迟线中出来的时间取决于它碰巧在线路中的位置。
In order to minimize waiting-time, Turing arranged for instructions to be stored not in consecutive positions in the delay line, but in relative positions selected by the programmer in such a way that each instruction would emerge at exactly the time it was required, in so far as this was possible. Each instruction contained a specification of the location of the next. This system subsequently became known as ‘optimum coding’. It was an integral feature of every version of the ACE design. Optimum coding made for difficult and untidy programming, but the advantage in terms of speed was considerable. Thanks to optimum coding, the Pilot Model ACE was able to do a floating point multiplication in 3 milliseconds (Wilkes’s EDSAC required 4.5 milliseconds to perform a single fixed point multiplication).
为了最小化等待时间,图灵安排指令不存储在延迟线的连续位置中,而是由程序员选择相对位置,使得每条指令尽可能在需要时恰好出现。每条指令包含下一条指令位置的说明。这一系统后来被称为"最佳编码"。它是 ACE 设计每个版本的固有特征。最佳编码使编程变得困难且杂乱,但在速度方面的优势相当可观。得益于最佳编码,试点模型 ACE 能在 3 毫秒内完成一次浮点乘法(威尔克斯的 EDSAC 执行一次定点乘法需要 4.5 毫秒)。
In the Williams tube or electrostatic memory, previously mentioned, a two-dimensional rectangular array of binary digits was stored on the face of a commercially-available cathode ray tube. Access to data was immediate. Williams tube memories were employed in the Manchester series of machines, SWAC, the IAS computer, and the IBM 701, and a modified form of Williams tube in Whirlwind I (until replacement by magnetic core in 1953).
在前述的威廉斯管或静电存储器中,二维矩形二进制数字阵列存储在商业可用的阴极射线管表面上。数据访问是即时的。威廉斯管存储器用于曼彻斯特系列机器、SWAC、IAS 计算机和 IBM 701,旋风 I 号中使用了改进形式的威廉斯管(直到 1953 年被磁芯取代)。
Drum memories, in which data was stored magnetically on the surface of a metal cylinder, were developed on both sides of the Atlantic. The initial idea appears to have been Eckert’s. The drum provided reasonably large quantities of medium-speed memory and was used to supplement a high-speed acoustic or electrostatic memory. In 1949, the Manchester computer was successfully equipped with a drum memory; this was constructed by the Manchester engineers on the model of a drum developed by Andrew Booth at Birkbeck College, London.
磁鼓存储器——数据以磁性方式存储在金属圆柱体表面——在大西洋两岸都得到了发展。最初的想法似乎是埃克特的。磁鼓提供了相当大量的中速存储器,用于补充高速声学或静电存储器。1949 年,曼彻斯特计算机成功配备了磁鼓存储器;这是由曼彻斯特工程师按照伦敦伯克贝克学院安德鲁 · 布斯(Andrew Booth)开发的磁鼓模型建造的。
The final major event in the early history of electronic computation was the development of magnetic core memory. Jay Forrester realised that the hysteresis properties of magnetic core (normally used in transformers) lent themselves to the implementation of a three-dimensional solid array of randomly accessible storage points. In 1949, at Massachusetts Institute of Technology, he began to investigate this idea empirically. Forrester’s early experiments with metallic core soon led him to develop the superior ferrite core memory. Digital Equipment Corporation undertook to build a computer similar to the Whirlwind I as a test vehicle for a ferrite core memory. The Memory Test Computer was completed in 1953. (This computer was used in 1954 for the first simulations of neural networks, by Belmont Farley and Wesley Clark of MIT’s Lincoln Laboratory (see Copeland and Proudfoot [1996]).
电子计算早期历史的最后一个重大事件是磁芯存储器的发展。杰伊 · 福雷斯特意识到磁芯(通常用于变压器)的磁滞特性适合实现三维固体阵列的随机可访问存储点。1949 年,在麻省理工学院,他开始实证研究这一想法。福雷斯特早期对金属磁芯的实验很快使他开发出更优越的铁氧体磁芯存储器。数字设备公司(Digital Equipment Corporation)承担建造一台类似旋风 I 号的计算机,作为铁氧体磁芯存储器的测试载体。存储器测试计算机于 1953 年完成。(这台计算机于 1954 年被 MIT 林肯实验室的贝尔蒙特 · 法利(Belmont Farley)和韦斯利 · 克拉克(Wesley Clark)用于神经网络的首次模拟(见 Copeland and Proudfoot [1996])。
Once the absolute reliability, relative cheapness, high capacity and permanent life of ferrite core memory became apparent, core soon replaced other forms of high-speed memory. The IBM 704 and 705 computers (announced in May and October 1954, respectively) brought core memory into wide use.
一旦铁氧体磁芯存储器的绝对可靠性、相对廉价、高容量和永久寿命变得明显,磁芯很快取代了其他形式的高速存储器。IBM 704 和 705 计算机(分别于 1954 年 5 月和 10 月宣布)使磁芯存储器得到广泛使用。
Bibliography
参考文献
Works Cited
引用的著作
- Babbage, C. (ed. by Campbell-Kelly, M.), 1994, Passages from the Life of a Philosopher, New Brunswick: Rutgers University Press
Babbage, C.(Campbell-Kelly, M. 编),1994,《哲学家生平片段》(Passages from the Life of a Philosopher),新不伦瑞克:罗格斯大学出版社 - Bennett, S., 1976, ‘F.C. Williams: his contribution to the development of automatic control’, National Archive for the History of Computing, University of Manchester, England. (This is a typescript based on interviews with Williams in 1976.)
Bennett, S.,1976,“F.C. Williams:他对自动控制发展的贡献”,英国曼彻斯特大学计算历史国家档案馆。(这是基于 1976 年对威廉斯采访的打字稿。) - Bowker, G., and Giordano, R., 1993, ‘Interview with Tom Kilburn’, Annals of the History of Computing, 15: 17–32.
Bowker, G. 和 Giordano, R.,1993,“汤姆 · 基尔伯恩访谈”,《计算历史年鉴》(Annals of the History of Computing),15:17–32。 - Copeland, B.J. (ed.), 2004, The Essential Turing Oxford University Press
Copeland, B.J.(编),2004,《图灵精粹》(The Essential Turing),牛津大学出版社 - Copeland, B.J. (ed.), 2005, Alan Turing’s Automatic Computing Engine: The Master Codebreaker’s Struggle to Build the Modern Computer Oxford University Press
Copeland, B.J.(编),2005,《艾伦 · 图灵的自动计算引擎:密码破译大师建造现代计算机的奋斗》(Alan Turing’s Automatic Computing Engine: The Master Codebreaker’s Struggle to Build the Modern Computer),牛津大学出版社 - Copeland, B.J. and others, 2006, Colossus: The Secrets of Bletchley Park’s Codebreaking Computers Oxford University Press
Copeland, B.J. 等,2006,《巨人机:布莱切利园密码破译计算机的秘密》(Colossus: The Secrets of Bletchley Park’s Codebreaking Computers),牛津大学出版社 - Copeland, B.J., and Proudfoot, D., 1996, ‘On Alan Turing’s Anticipation of Connectionism’ Synthese, 108: 361–377
Copeland, B.J. 和 Proudfoot, D.,1996,“论艾伦 · 图灵对联结主义的预见”,《综合》(Synthese),108:361–377 - Evans, C., 197?, interview with M.H.A. Newman in ‘The Pioneers of Computing: an Oral History of Computing’, London: Science Museum
Evans, C.,197?,“M.H.A. 纽曼访谈”,载于《计算的先驱:计算口述史》(“The Pioneers of Computing: an Oral History of Computing”),伦敦:科学博物馆 - Fifer, S., 1961, Analog Computation: Theory, Techniques, Applications New York: McGraw-Hill
Fifer, S.,1961,《模拟计算:理论、技术、应用》(Analog Computation: Theory, Techniques, Applications),纽约:麦格劳-希尔 - Ford, H., 1919, ‘Mechanical Movement’, Official Gazette of the United States Patent Office, October 7, 1919: 48
Ford, H.,1919,“机械运动”,《美国专利局官方公报》(Official Gazette of the United States Patent Office),1919 年 10 月 7 日:48 - Goldstine, H., 1972, The Computer from Pascal to von Neumann Princeton University Press
Goldstine, H.,1972,《从帕斯卡到冯 · 诺伊曼的计算机》(The Computer from Pascal to von Neumann),普林斯顿大学出版社 - Huskey, H.D., 1947, ‘The State of the Art in Electronic Digital Computing in Britain and the United States’, in [Copeland 2005]
Huskey, H.D.,1947,“英美电子数字计算的技术现状”,载于 [Copeland 2005] - Newman, M.H.A., 1948, ‘General Principles of the Design of All-Purpose Computing Machines’ Proceedings of the Royal Society of London, series A, 195 (1948): 271–274
Newman, M.H.A.,1948,“通用计算机设计的普遍原则”,《伦敦皇家学会学报》,A 辑,195(1948):271–274 - Randell, B., 1972, ‘On Alan Turing and the Origins of Digital Computers’, in Meltzer, B., Michie, D. (eds), Machine Intelligence 7, Edinburgh: Edinburgh University Press, 1972
Randell, B.,1972,“论艾伦 · 图灵与数字计算机的起源”,载于 Meltzer, B.、Michie, D.(编),《机器智能 7》(Machine Intelligence 7),爱丁堡:爱丁堡大学出版社,1972 年 - Smith, B.C., 1991, ‘The Owl and the Electric Encyclopaedia’, Artificial Intelligence, 47: 251–288
Smith, B.C.,1991,“猫头鹰与电子百科全书”,《人工智能》(Artificial Intelligence),47:251–288 - Thomson, J., 1876, ‘On an Integrating Machine Having a New Kinematic Principle’ Proceedings of the Royal Society of London, 24: 262–5
Thomson, J.,1876,“论一种具有新运动学原理的积分机”,《伦敦皇家学会学报》,24:262–5 - Turing, A.M., 1936, ‘On Computable Numbers, with an Application to the Entscheidungsproblem’ Proceedings of the London Mathematical Society, Series 2, 42 (1936–37): 230–265. Reprinted in The Essential Turing (Copeland [2004]).
- Turing, A.M.,1936,“论可计算数及其在判定问题上的应用”,《伦敦数学会学报》,第 2 辑,42(1936–37):230–265。重印于《图灵精粹》(Copeland [2004])。
- Turing, A.M, 1945, ‘Proposed Electronic Calculator’, in Alan Turing’s Automatic Computing Engine (Copeland [2005])
Turing, A.M.,1945,“提议的电子计算器”,载于《艾伦 · 图灵的自动计算引擎》(Copeland [2005]) - Turing, A.M., 1947, ‘Lecture on the Automatic Computing Engine’, in The Essential Turing (Copeland [2004])
- Turing, A.M.,1947,“关于自动计算引擎的讲座”,载于《图灵精粹》(Copeland [2004])
Turing, A.M., and Wilkinson, J.H., 1946–7, ‘The Turing-Wilkinson Lecture Series (1946-7)’, in Alan Turing’s Automatic Computing Engine (Copeland [2005])
Turing, A.M. 和 Wilkinson, J.H.,1946–7,“图灵-威尔克斯系列讲座(1946-7)”,载于《艾伦 · 图灵的自动计算引擎》(Copeland [2005]) - von Neumann, J., 1945, ‘First Draft of a Report on the EDVAC’, in Stern, N. From ENIAC to UNIVAC: An Appraisal of the Eckert-Mauchly Computers Bedford, Mass.: Digital Press (1981), pp. 181–246
von Neumann, J.,1945,“关于 EDVAC 的报告初稿”,载于 Stern, N.《从 ENIAC 到 UNIVAC:埃克特-莫奇利计算机评估》(From ENIAC to UNIVAC: An Appraisal of the Eckert-Mauchly Computers),马萨诸塞州贝德福德:数字出版社(1981 年),第 181–246 页 - Williams, F.C., 1975, ‘Early Computers at Manchester University’ The Radio and Electronic Engineer, 45 (1975): 237–331
Williams, F.C.,1975,“曼彻斯特大学的早期计算机”,《无线电与电子工程师》(The Radio and Electronic Engineer),45(1975):237–331 - Wynn-Williams, C.E., 1932, ‘A Thyratron “Scale of Two” Automatic Counter’ Proceedings of the Royal Society of London, series A, 136: 312–324
Wynn-Williams, C.E.,1932,“闸流管’二进’自动计数器”,《伦敦皇家学会学报》,A 辑,136:312–324
Further Reading
延伸阅读
- Copeland, B.J., 2004, ‘Colossus — Its Origins and Originators’ Annals of the History of Computing, 26: 38–45
Copeland, B.J.,2004,“巨人机——其起源与创始人”,《计算历史年鉴》,26:38–45 - Metropolis, N., Howlett, J., Rota, G.C. (eds), 1980, A History of Computing in the Twentieth Century New York: Academic Press
Metropolis, N.、Howlett, J.、Rota, G.C.(编),1980,《二十世纪计算史》(A History of Computing in the Twentieth Century),纽约:学术出版社 - Randell, B. (ed.), 1982, The Origins of Digital Computers: Selected Papers Berlin: Springer-Verlag
Randell, B.(编),1982,《数字计算机的起源:论文选集》(The Origins of Digital Computers: Selected Papers),柏林:施普林格出版社 - Williams, M.R., 1997, A History of Computing Technology Los Alamitos: IEEE Computer Society Press
Williams, M.R.,1997,《计算技术史》(A History of Computing Technology),洛斯阿拉米托斯:IEEE 计算机学会出版社
via:
- The Modern History of Computing (Spring 2007 Edition)
https://plato.stanford.edu/archives/spr2007/entries/computing-history/









