冯诺依曼结构:现代计算机的灵魂

Von Neumann

冯诺依曼结构(Von Neumann Architecture)于1945年被正式提出,它消除了原始计算机体系中只能依靠硬件控制程序的状况。早期的计算机程序是硬件化的,一旦需要修改程序功能,就需要重新组装电路板。冯诺依曼结构的主要特点是数据和指令存储在同一个内存单元中,减少了机器指令的数量的同时实现了可编程的计算机。

储存程式型电脑结构(冯诺伊曼结构)提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备)。

1945年6月30日约翰·冯·诺伊曼(John Von Neumann)在美国宾夕法尼亚大学摩尔电机学院写给美国陆军军械部(United States Army Ordnance Department)的《EDVAC报告书的第一份草案》First Draft of a Report on the EDVAC详细记录了其心目中储存程式型电脑(冯诺伊曼结构)。冯·诺依曼由于在曼哈顿工程中需要大量的运算,从而使用了当时最先进的两台计算机Mark I和ENIAC,在使用过程中他意识到了存储程序的重要性,从而提出了存储程序的逻辑架构,并由ENIAC机密计划的安全官赫尔曼·戈德斯坦(Herman Goldstine)所发表。

然而我们不得不指出德国工程师和计算机先驱康拉德·楚泽(Konrad Ernst Otto Zuse)在1936年提出的专利已经包含了储存程式型电脑的概念,这一点我们可以在文章Konrad Zuse’s Legacy: The Architecture of the Z1 and Z3得到印证。而储存程式型电脑的概念甚至早在冯·诺伊曼接触ENIAC前就已在美国宾夕法尼亚大学的摩尔电机学院流传了,这一点我们可以在美国宾夕法尼亚大学存档的Computers at the University of Pennsylvania’s Moore School, 1943-1946的到印证。储存程式型电脑(冯诺伊曼结构)的真实创立者或许永远是个谜。

认真的回顾这一段历史,或许数学家阿兰图灵(Alan Turing)功不可没。图灵在剑桥大学Max Newman的演讲中注意到数理逻辑问题,并于1936年伦敦数学学会会刊(Proceedings of the London Mathematical Society)刊登了一篇题为On Computable Numbers, with an Application to the Entscheidungsproblem的论文。图灵在其中描述了一台他称之为通用计算机器的假想机器(通用图灵机)。假设的机器有无限的存储空间(内存),其中包含指令和数据。

约翰·冯·诺伊曼于 1935 年在剑桥大学担任客座教授时结识了图灵。图灵于 1936 年至 1937 年在新泽西州普林斯顿高等研究院攻读博士学位期间与约翰·冯·诺伊曼深度合作,他当时是否接触并受到图灵 1936 年发表论文的启发不得而知。

  • 2023-04-01