一、约翰·冯·诺依曼---计算机之父
约翰·冯·诺依曼(John von Neumann,1903年12月28日---1957年2月8日),出生于匈牙利布达佩斯,匈牙利裔美籍数学家、计算机科学家、物理学家和化学家,美国国家科学院院士,生前是普林斯顿高等研究院教授 。
二、冯·诺依曼结构
2.1、简介
冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。
数学家冯·诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯·诺依曼体系结构。
2.2、结构图
2.3、优点
(2)采用程序存储思想;
(3)指令和数据一样可以参与运算;
(4) 数据以二进制表示;
(5)将软件和硬件完全分离;
(7)指令顺序执行。
2,4、缺点
(1)指令和数据存储在同一个存储器中,形成系统对存储器的过分依赖。如果储存器件的发展受阻,系统的发展也将受阻。
(2)指令在存储器中按其执行顺序存放,由指令计数器PC指明要执行的指令所在的单元地址。 然后取出指令执行操作任务。所以指令的执行是串行。影响了系统执行的速度。
(3)存储器是按地址访问的线性编址,按顺序排列的地址访问,利 于存储和执行的机器语言指令,适用于作数值计算。但是高级语言表示的存储器则是一组有名字的变量,按名字调用变量,不按地址访问。机器语言同高级语言在语义上存在很大的间隔, 称之为冯·诺依曼语 义间隔。消除语义间隔成了计算机发展面临的一大难题。
(4)冯·诺依曼体系结构计算机是为算术和逻辑运算而诞生的,目前在数值处理方面已经到达较高的速度和精度,而非数值处理应用领域发展缓慢,需要在体系结构方面有重大的突破。
(5)传统的冯·诺依曼型结构属于控制驱动方式。它是执行指令代码对数值代码进行处理,只要指令明确,输入数据准确,启动程序后自动运行而且结果是预期的。一旦指令和数据有错误,机器不会主动修改指令并完善程序。而人类生活中有许多信息是模糊的,事件的发生、发展和结果是不能预期的,现代计算机的智能是无法应对如此复杂任务的
三、了解
哈佛结构
哈佛结构的计算机分为三大部件:(1)CPU;(2)程序存储器;(3)数据存储器。它的特点是将程序指令和数据分开存储,由于数据存储器与程序存储器采用不同的总线,因而较大的提高了存储器的带宽,使之数字信号处理性能更加优越。 [3]
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。
两者区别
冯·诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。人们把冯诺依曼的这个理论称为冯诺依曼体系结构。从ENIAC到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。
根据冯诺依曼体系结构构成的计算机,必须具有如下功能:把需要的程序和数据送至计算机中;必须具有长期记忆程序、数据、中间结果及最终运算结果的能力;能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力;能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作;能够按照要求将处理结果输出给用户。
哈佛结构是为了高速数据处理而采用的,因为可以同时读取指令和数据(分开存储的)。大大提高了数据吞吐率,缺点是结构复杂。通用微机指令和数据是混合存储的,结构上简单,成本低。假设是哈佛结构:你就得在电脑安装两块硬盘,一块装程序,一块装数据,内存装两根,一根储存指令,一根存储数据......
是什么结构要看总线结构的。51单片机虽然数据指令存储区是分开的,但总线是分时复用的,所以顶多算改进型的哈佛结构。ARM9虽然是哈佛结构,但是之前的版本也还是冯·诺依曼结构。早期的X86能迅速占有市场,一条很重要的原因,正是靠了冯·诺依曼这种实现简单,成本低的总线结构。处理器虽然外部总线上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经算是改进型哈佛结构的了