跳转到内容

英文维基 | 中文维基 | 日文维基 | 草榴社区

曼彻斯特一型

本页使用了标题或全文手工转换
维基百科,自由的百科全书
Manchester Mark 1
产品系列曼彻斯特计算机英语Manchester computers
前代机种曼彻斯特SSEM英语Manchester Baby
后继机种费伦蒂1型英语Ferranti Mark 1[注 1]

曼彻斯特1型(Manchester Mark 1)[注 2]是最早的存储程序计算机之一,在英国曼彻斯特维多利亚大学研发的别称为“宝贝”的小规模实验机英语Manchester Baby(简称‘SSEM’,1948年6月开始运行)基础上开发完成。它也被称为曼彻斯特自动数字机(Manchester Automatic Digital Machine),或简称为MADM[3]。研发工作始于1948年8月,第一个版本于1949年4月开始运作:一个为了寻找梅森素数而编写的程序在1949年6月16日至17日的晚上无误差的运行了9个小时。

该机器成功运作的的消息在英国媒体上被广泛报道,媒体使用“电子大脑(electronic brain)”这一短语读者描述。这种描述引起了曼彻斯特大学神经外科系主任的强烈反响,并最终演变成一场关于电子计算机是否真正具有创造性的长期争论。

曼彻斯特1型(下文简称Mark 1)原本只是计划为大学提供计算资源,让研究人员获得计算机实际应用的经验,但很快也成为了费朗蒂英语Ferranti[注 3]公司商业版计算机设计的基础。Mark 1的开发于1949年底中止,机器本体则在1950年底被废弃,并最终于1951年2月被世界上第一台商用通用电子计算机费伦蒂1型英语Ferranti Mark 1所取代。[7]

Mark 1具有特别的历史意义,因为它在设计上开创性地包含了索引寄存器英语index register,这一创新使程序更容易按顺序读取内存中的组。该机器的开发产生了34项专利,其设计背后的许多理念被纳入随后的商业产品,如IBM 701英语IBM 701702英语IBM 702以及费伦蒂1型等。首席设计师弗雷德里克·威廉姆斯英语Frederic C. Williams[注 4]汤姆·吉尔本英语Tom Kilburn[注 5]从他们对Mark 1的经验得出结论,计算机在科学角色中的使用比在纯数学中更多。1951年以后他们开始研制Mark 1的继任者,也就是包含有一个浮点单元的Meg。

背景

[编辑]

1936年,数学家阿兰·图灵发表了理论上“通用计算机器”的定义。图灵证明,通过编写算法,这样的机器可以解决任何可以想到的数学问题[8]。在20世纪40年代,图灵和其他人如康拉德·楚泽发展了使用计算机自己的记忆体而不是磁带来保存程序和数据的想法[9],但Mark 1基于的却是数学家约翰·冯·诺伊曼定义的广受认可的“存储程序计算机”架构[10]。 冯·诺依曼计算机的实际构造取决于合适的存储器设备的可用性。曼彻斯特大学SSEM,世界上第一台电子存储程序计算机于1948年6月21日开始运作第一个项目,成功地证明了存储程序方法和威廉姆斯管的实用性,威廉姆斯管是基于标准阴极射线管(CRT)的早期计算机存储器形式[11]。早期的电子计算机通常通过重新布线或通过插头和配线板进行编程;没有单独的程序存储在内存中,就像在现代计算机中一样。例如,ENIAC的重新编程可能需要几天时间[12]。其他研究人员也在开发存储程序计算机,特别是英国国家物理实验室Pilot ACE剑桥大学EDSAC美国陆军EDVAC[13]。SSEM和Mark 1的主要区别在于使用威廉姆斯管作为记忆装置,而不是水银延迟线[14]

从1948年8月左右开始,SSEM被深入开发为Mark 1的原型,而这最初的目的是为大学提供更现实的计算设施[15]。1948年10月,英国政府首席科学家班·洛克史派瑟英语Ben Lockspeiser在访问曼彻斯特大学时展示了原型Mark 1。洛克史派瑟对他所看到的立即与当地费朗蒂公司签订政府合同以制造该机器的商业版本费伦蒂马克一号的情形印象深刻[16]。在1948年10月26日致公司的信中,洛克史派瑟准许该公司“按照我们讨论的方针进行,即按照弗雷德里克·威廉姆斯教授的指示建造一台电子计算机”[17]。从那时起,Mark 1的开发开始有了额外的目标,就是为费朗蒂公司提供以商业机器为基础的设计[18]。英国政府与费朗蒂公司的合同从1948年11月开始为期共五年,每年约3.5万英镑(相当于2021年每年135万英镑[19][20][a]

开发和设计

[编辑]
功能示意图显示了威廉姆斯管(绿色)。C管保存当前指令及其地址;A管是累加器;M管用于保持被乘数和乘数以进行乘法运算;B管包含索引寄存器,用于修改指令。

SSEM由弗雷德里克·威廉姆斯、汤姆·吉尔本和杰夫·图特尔英语Geoff Tootill[注 6]团队设计。研发工作始于1948年8月。该项目很快就有了双重目的,即为费朗蒂公司提供一种工作设计,他们可以在这种设计上建立商用机器费伦蒂马克一号;以及构建一台计算机,使研究人员能够获得如何在实践中使用这种机器的经验。Mark 1的两个版本中的第一个——被称为中介版本——于1949年4月开始运作[15]。但是,第一个版本缺少诸如在主存储器及其新开发的磁性后备存储器之间以编程方式传输数据所需的指令,这必须通过暂停机器并手动启动传输来完成。这些缺失的功能已纳入最终规范版本,该版本于1949年10月得以完全正常工作[18]。这台机器包含4,050个真空管,功耗为25千瓦[23]。为了提高可靠性,这台机器使用了GEC专门制造的CRT以代替SSEM使用的标准设备[7]

原本SSEM上使用的32位字节长度被追加到了40字节。每个字可以包含一个40位数或两个20位程序指令。主存储器最初由两个双密度威廉姆斯管组成,每个管都有两个32x40位——称为页面英语Page (computer memory)——由磁鼓支持的阵列,能够存储另外32页。最终规格版本的主存储器有4个威廉姆斯管以提供8页主存储,128个磁鼓页作为后备存储[18]。直径12-英寸(300-毫米)的磁鼓最初被称为磁轮,在其表面周围包含一系列平行的磁轨,每个磁道都有自己的读/写头[24]。每个磁轨可以存储2,560位,对应两页(2×32×40位)。磁鼓的一次旋转花费30毫秒,在此期间可以将两页都传送到CRT的主存储器,尽管实际的数据传输时间取决于延迟,即页面到达读/写头下所花费的时间。将页面写入磁鼓中的时间大约是读取时间的两倍[18]。磁鼓的转速与主CPU时钟同步,而且支持添加额外的磁鼓。使用目前仍称为曼彻斯特编码的相位调制技术将数据记录到鼓上[25]

开发过程中,Mark 1的指令集从SSEM最初的7个增加到了26个,包括了硬件层支持的乘法指令。在最终规格版本中,指令集增加到30个。每个字被允许分配10位以保存指令代码。标准指令时间为1.8毫秒,但乘法速度要慢很多,具体取决于运算数的大小。[26]

Mark 1最重要的创新通常被认为是其引入了在现代计算机上常见的索引寄存器。SSEM已经包含了两个以威廉姆斯管实现功能的寄存器:累加器(A管)和程序计数器(C管)。由于已经分配了A和C,所以用于保存两个寄存器的电子管(最初被称为B-line)被命名为B管。寄存器中的内容可用于修改程序指令,允许方便地通过存储在存储器中的数字数组进行迭代。然而Mark 1还有第四个管(M),用于保持被乘数和乘数以进行乘法运算。[25]

编程

[编辑]
穿孔带的一部分显示一个40位字如何被编码为8个5位字符。

在为每个程序指令分配的20位中,10位用于保存指令代码,这种设计支持1024(210)个不同的指令。设计之初仅有26位[15],但当增加了以编程方式控制磁鼓和CRT主存储器之间数据传输的功能代码之后,指令代码被增加到了30位。在中间版本上,操作员通过按键开关进行程序输入,机器在称为输出设备的阴极射线管上输出为一系列点和短划线,就像在已经开发出Mark 1的Baby上一样。然而,1949年10月完成的最终规格机器得益于新增的带有五孔纸带读取器和打孔器英语Punched tape电传打字机而变得更易于输入输出。[18]

于1948年9月被任命为曼彻斯特大学计算机实验室名誉副主任的数学家艾伦·图灵[15],设计了基于标准ITA2的5位电传打印机代码的底数32英语base 32编码方案,允许将程序和数据从纸带上读取和写入[27]。ITA2系统将可以用5位(25)表示的32个二进制值中的每个二进制值映射到单个字符。因此“10010”代表“D”、“10001”代表“Z”……依此类推。图灵仅更改了一些标准编码。例如00000和01000,在电传打印机代码中原本分别表示的“空字符”和“换行”,在此则分别表示字符“/”和“@”。用斜线表示的二进制零是程序和数据中最常见的字符,导致序列会被写为“//////////////”。一位早期用户提到图灵之所以选择使用斜线,其实是由于他的潜意识,代表从肮脏的窗户看到的雨水的样子,反映了曼彻斯特的“惨淡”天气。[28]

由于Mark 1的字长为40位,因此需要8个5位电传打印机字符来编码每个字。因此,例如二进制字:

10001 10010 10100 01001 10001 11001 01010 10110

将在纸带上表示为ZDSLZWRF。存储中任何单词的内容也可以通过电传打字机的键盘进行设置,然后输出到其打印机上。该机器在内部以二进制工作,但是它能够分别对其输入和输出执行必要的十进制到二进制或者二进制到十进制的转换。[24]

Mark 1没有定义汇编语言。程序必须以二进制形式编写和提交,每个40位字由8个5位字符编码;鼓励程序员记住修改后的ITA2编码方案,以使其工作更轻松。在程序控制下,从纸带打孔器读取和写入数据。 Mark 1也没有硬件中断系统。在启动读取或写入操作之后,程序继续运行,直到遇到另一条输入/输出指令为止,此时机器会等待第一条指令完成。[29]

Mark 1没有操作系统,它唯一的系统软件是一些用于输入和输出的基本例程[7]。就像在之前开发的SSEM一样,与既定的数学惯例相反,Mark 1设定的存储位置被安排在左侧的最低位。因此,一个“1”用五位表示为“10000”,而不是更传统的“00001”。负数则用二补数表示,就像今天大多数计算机一样。[29]

第一个程序

[编辑]

第一个在Mark 1上运行的实际程序是在1949年4月初启动的搜索梅森素数。这个任务在1949年6月16日至17日晚上无错误地运行了9个小时[30]。该程序的算法部分由曼彻斯特大学数学系主任马克斯·纽曼英语Max Newman[注 7]制定,主程序则由吉尔本和图特尔编写。艾伦·图灵后来写了一个优化版本的程序,被称为“Mersenne Express”。[25]

直到1950年,曼彻斯特马克1继续进行有用的数学工作,包括对黎曼猜想光学领域中相关计算的研究[32][33]

后期发展

[编辑]

1949年8月,图特尔暂时从曼彻斯特大学转到费朗蒂公司,与该公司合作了四个月并继续进行费伦蒂马克一号的设计[34]。1950年8月,曼彻斯特1型被拆除并报废[35],几个月之后被第一台费伦蒂马克一号取代,后者是世界上第一台商用通用计算机[7]

从1946年到1949年,在Mark 1及其前身SSEM上工作的设计团队平均规模大约为4人。在此期间,团队一共获得了34项专利[3]。1949年7月,IBM提供全款邀请威廉姆斯前往美国进行一次旅行,以便讨论有关Mark 1的设计。该公司之后将获得的Mark 1相关部分专利授权使用在了自家设计的机器上,包括IBM 701和702等[36]。Mark 1最重要的设计影响,可能就算其首次引入牵引寄存器。这项专利最终挂在威廉姆斯、吉尔本、图特尔和纽曼等人名下[3]

吉尔本和威廉姆斯得出的结论是,计算机在科学领域中的使用将比纯数学领域更广泛,并决定开发一种包含浮点单元的新机器。新项目始于1951年,由此建成的机器于1954年5月开始运行其第一个程序,被称为Meg或megacycle机器。它比Mark 1更小更简单,解决数学问题的速度也更快。费朗蒂公司生产了一款Meg,其中的威廉姆斯管被替换为更可靠的核心内存,以Ferranti Mercury英语Ferranti Mercury的名义销售。[37]

文化影响

[编辑]

Mark 1及其前身SSEM的成功运作在英国媒体上得到了广泛的报道,英国媒体使用“电子大脑”这一短语来描述这些机器[38]路易斯·蒙巴顿勋爵早在1946年10月31日发表于英国无线电工程师学会的演讲中就引入了这一术语,他在该演讲中推测当时可用的原始计算机是如何发展的[39]。令人兴奋的是1949年报道的第一台可识别的现代计算机引起了开发人员意想不到的反应; 曼彻斯特大学神经外科教授杰弗里·杰弗逊爵士英语Geoffrey Jefferson[注 8]于1949年6月9日被要求发表“李斯特演说英语Lister Medal”时选择了“机械人的思想”作为他的主题[41]。在他的讲话中他说:

直到一台机器因为感觉到的思想和情感而写十四行诗或一首协奏曲,并且不是由于符号的偶然掉落,我们才能同意机器等于大脑-也就是说,不仅要写它而且要知道它已经写了它。当机器无法获得想要的东西时,没有机器会为它的成功感到高兴,因其阀门熔断而悲痛,因奉承受宠若惊,因其错误而悲惨,因性而着迷,为之生气或痛苦。[注 9][41]

泰晤士报》第二天报道了杰斐逊的讲话,并补充说杰斐逊预测“皇家学会的优雅房间被改建成车库以容纳这些新人的这一天永远不会到来”。作为回应,纽曼为《泰晤士报》撰写了一篇后续文章,并在文章中声称Mark 1的结构与人类大脑之间存在着相似的类比[42]。他的文章包括对图灵的采访,他补充说:

这只是即将发生的事情的预兆,只是即将发生的事情的阴影。在真正了解机器功能之前,我们必须具有一些机器方面的经验。我们可能需要很多年才能适应新的可能性,但是我不明白为什么它不应该进入人类智力通常涵盖的任何领域,并最终平等竞争。[注 10][43]

另见

[编辑]

脚注

[编辑]

注释

[编辑]
  1. ^ 见英国零售价指数英语Retail Price Index,数据来自Clark, Gregory. The Annual RPI and Average Earnings for Britain, 1209 to Present (New Series). MeasuringWorth. 2017 [2022-06-11]. 

原文引用和译注

[编辑]
  1. ^ 译名参考自瘾科技[1]
  2. ^ 译名参考自新华网[2],另有来源(误)译作“曼彻斯特马克一号”[1]
  3. ^ 译名参考自《硅⾕百年史: 伟⼤的科技创新与创业历程: 1900~ 2013》[4],另有来源译为“费朗替”[5]或者“费伦蒂”[6]
  4. ^ 译名参考自《硅⾕百年史: 伟⼤的科技创新与创业历程: 1900~ 2013》[4]
  5. ^ 译名参考自《硅⾕百年史: 伟⼤的科技创新与创业历程: 1900~ 2013》[4]
  6. ^ 译名参考自中国图书对外推广网[21],另有来源译为“吉尔夫土提尔”[22]
  7. ^ 译名参考自凤凰网。[31]
  8. ^ 译名参考自雷锋网。[40]
  9. ^ 原文为:“Not until a machine can write a sonnet or compose a concerto because of thoughts and emotions felt, and not by the chance fall of symbols, could we agree that machine equals brain – that is, not only write it but know that it had written it. No machine could feel pleasure at its success, grief when its valves fuse, be warmed by flattery, be made miserable by its mistakes, be charmed by sex, be angry or miserable when it cannot get what it wants.”
  10. ^ 原文为:“This is only a foretaste of what is to come, and only the shadow of what is going to be. We have to have some experience with the machine before we really know its capabilities. It may take years before we settle down to the new possibilities, but I do not see why it should not enter any of the fields normally covered by the human intellect and eventually compete on equal terms.”

参考来源

[编辑]
  1. ^ 1.0 1.1 Atticus Wu. 世界上第一台現代電腦六十歲囉!. engadget.com. 2008-06-25 [2019-10-09]. (原始内容存档于2019-10-08) (中文(繁体)). 
  2. ^ 王心馨. 计算机界“诺贝尔奖”公布:万维网发明者获奖-新华网. us.xinhuanet.com. 2017-04-05 [2019-06-24]. (原始内容存档于2019-06-24) (中文(中国大陆)). 
  3. ^ 3.0 3.1 3.2 Lavington (1998),第20页.
  4. ^ 4.0 4.1 4.2 斯加鲁菲 2014,第176页.
  5. ^ 量子计算的前世今生,看这篇万字长文就够了. www.sohu.com. 2016-10-15 [2019-07-06]. (原始内容存档于2019-07-06) (中文(中国大陆)). 
  6. ^ 英国DCC/KAlS潜艇指挥和武器控制系统. 2005-03-11 [2019-10-09]. (原始内容存档于2019-10-08) (中文). 
  7. ^ 7.0 7.1 7.2 7.3 The Manchester Mark 1, University of Manchester, [2009-01-24], (原始内容存档于2008-11-21) (英语) 
  8. ^ Turing, A. M., On Computable Numbers, with an Application to the Entscheidungsproblem (PDF), Proceedings of the London Mathematical Society, 2 42, 1936, 42: 230–2651936–37 [2019-06-25], doi:10.1112/plms/s2-42.1.230, (原始内容 (pdf)存档于2011-05-06) (英语) .
  9. ^ Lee (2002),第67页.
  10. ^ Lavington (1998),第7页.
  11. ^ Enticknap, Nicholas, Computing's Golden Jubilee, Resurrection (The Bulletin of the Computer Conservation Society), Summer 1998, (20) [2008-04-19], ISSN 0958-7403, (原始内容存档于2019-05-20) (英语) 
  12. ^ Early Electronic Computers (1946–51), University of Manchester, [2008-11-16], (原始内容存档于2009-01-05) (英语) 
  13. ^ Lavington (1998),第9页.
  14. ^ Lavington (1998),第8页.
  15. ^ 15.0 15.1 15.2 15.3 Lavington (1998),第17页.
  16. ^ Lavington (1998),第21页.
  17. ^ Newman's Contribution to the Mark 1 Machines, University of Manchester, [2009-01-23], (原始内容存档于2008-05-11) (英语) 
  18. ^ 18.0 18.1 18.2 18.3 18.4 Napper, R. B. E., The Manchester Mark 1, University of Manchester, 2005-03-30 [2009-01-22], (原始内容存档于2008-12-29) (英语) 
  19. ^ 见英国零售价指数英语Retail Price Index,数据来自Clark, Gregory. The Annual RPI and Average Earnings for Britain, 1209 to Present (New Series). MeasuringWorth. 2017 [2022-06-11]. 
  20. ^ Lavington (1980),第39页.
  21. ^ 大英图书馆创建英国科学在线档案库_海外出版_新闻中心_中国图书对外推广网. www.chinabookinternational.org. [2019-07-21]. (原始内容存档于2019-07-21) (中文(中国大陆)). ……科学家是杰夫.图特尔(Geoff Tootill)…… 
  22. ^ 紀念世界第一台儲存程式電腦「Baby」65 週年. VR-Zone 中文版. 2013-06-22 [2019-07-21]. (原始内容存档于2019-07-21) (中文(台湾)). ……和吉尔夫土提尔(Geoff Tootill)开发…… 
  23. ^ Lavington, S. H., The Manchester Mark 1 and Atlas: a Historical Perspective (PDF), University of Central Florida, 1977-07 [2009-02-08], (原始内容存档 (PDF)于2009-03-04) (英语) . (Reprint of the paper published in Communications of the ACM (January 1978) 21 (1)
  24. ^ 24.0 24.1 Kilburn, Tom, The University of Manchester Universal High-Speed Digital Computing Machine, University of Manchester, [2009-02-02], (原始内容存档于2009-01-07) (英语) . (Reprint of Kilburn, Tom (1949). "The University of Manchester Universal High-Speed Digital Computing Machine". Nature 164).
  25. ^ 25.0 25.1 25.2 Lavington (1998),第18页.
  26. ^ Lavington (1998),第17–18页.
  27. ^ Leavitt (2007),第232页.
  28. ^ Leavitt (2007),第233页.
  29. ^ 29.0 29.1 Napper, R. B. E., Programmers' Handbook (2nd Edition) for the Manchester Electronic Computer Mark II, University of Manchester, 2005-03-30 [2009-01-23], (原始内容存档于2009-05-26) (英语) 
  30. ^ Napper (2000),第370页.
  31. ^ 谷歌捐10万美元拯救阿兰·图灵手稿_科技频道_凤凰网. tech.ifeng.com. 2010-11-24 [2019-07-21]. (原始内容存档于2019-07-21) (中文(中国大陆)). ……先驱人物马克斯·纽曼(Max Newman)持有…… 
  32. ^ Lavington (1998),第19页.
  33. ^ The University Of Manchester Computing Machine. curation.cs.manchester.ac.uk. The University Of Manchester Computing Machine(Digital 60). Riemann hypothesis, ray tracing. A Large-scale Machine. [2018-05-21]. (原始内容存档于2019-10-08) (英语). 
  34. ^ Lavington (1998),第24–25页.
  35. ^ Lavington (1980),第38页.
  36. ^ Lavington (1998),第23页.
  37. ^ Lavington (1998),第31页.
  38. ^ Fildes, Jonathan, One tonne 'Baby' marks its birth, BBC News, 2008-06-20 [2019-06-28], (原始内容存档于2012-07-27) (英语) 
  39. ^ An Electronic Brain, The Times, 1 November 1946: 2 
  40. ^ 赵云峰. 哪些建树归功于图灵,哪些却不能算到他名下?. www.leiphone.com. 2015-09-16 [2019-06-27]. (原始内容存档于2019-06-27) (中文(中国大陆)). 神经学家杰弗里·杰弗逊(Geoffrey Jefferson) 
  41. ^ 41.0 41.1 Leavitt (2007),第236页.
  42. ^ Leavitt (2007),第237页.
  43. ^ Leavitt (2007),第237–238页.

参考书籍

[编辑]

拓展阅读

[编辑]
  • Lavington, Simon H., Manchester Computer Architectures, 1948–1975, IEEE Annals of the History of Computing (IEEE), July–September 1993, 15 (3): 44–54, doi:10.1109/85.222841 

外部链接

[编辑]
  • The Manchester Mark 1
  • Early computers at Manchester University in Resurrection (The Bulletin of the Computer Conservation Society) 1 (4), Summer 1992, ISSN 0958-7403