要成为程序底层高手,可能您需要简单了解一下CPU的架构。CPU的架构业界一般有两种典型架构:冯.诺依曼架构和哈弗架构

1、冯.诺依曼(John von Neumann)架构:

先来科普一下这个伟大的计算机之父。偏激一点的说,现在的编程人员都是吃他的饭啊。

cpu架构详细介绍(CPU架构简单介绍)(1)

John von Neumann 冯.诺依曼

多说两句,von这个姓,在欧洲是一个很高贵的姓。如果你见到一个名字中有von,那么这个人或其祖先一定是有封地的贵族。 冯.诺依曼是匈牙利人,布达佩斯大学数学博士。先后执教于柏林大学和汉堡大学。1930年前往美国,后入美国籍。历任普林斯顿大学、普林斯顿高级研究所教授,美国原子能委员会会员。美国全国科学院院士。早期以算子理论、共振论、量子理论、集合论等方面的研究闻名,开创了冯·诺依曼代数。第二次世界大战期间为第一颗原子弹的研制作出了贡献。为研制电子数字计算机提供了基础性的方案。1944年与摩根斯特恩(Oskar Morgenstern)合著《博弈论与经济行为》,是博弈论学科的奠基性著作。晚年,研究自动机理论,著有对人脑和计算机系统进行精确分析的著作《计算机与人脑》。

主要著作有《量子力学的数学基础》(1926)、《计算机与人脑》(1958)、《经典力学的算子方法》、《博弈论与经济行为》(1944)、《连续几何》(1960)等。

cpu架构详细介绍(CPU架构简单介绍)(2)

冯.诺依曼架构的计算机

使用冯·诺伊曼结构的中央处理器和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、ARM的ARM7、MIPS公司的MIPS处理器也采用了冯·诺依曼结构。

1945年,冯·诺依曼首先提出了"存储程序"的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为"冯·诺依曼型结构"计算机。冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。

特点:

2、哈弗架构

cpu架构详细介绍(CPU架构简单介绍)(3)

哈弗结构的计算机

哈佛结构的计算机由CPU、 程序存储器 和数据存储器组成,程序存储器和数据存储器采用不同的总线,从而提供了较大的存储器带宽,使数据的移动和交换更加方便,尤其提供了较高的数字信号处理性能。

哈佛结构的微处理器通常具有较高的执行效率。其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。

冯·诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。人们把冯诺依曼的这个理论称为冯诺依曼体系结构。从ENIAC到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。

3、两种结构的比较

冯诺依曼体系结构构成的计算机,必须具有如下功能:把需要的程序和数据送至计算机中;必须具有长期记忆程序、数据、中间结果及最终运算结果的能力;能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力;能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作;能够按照要求将处理结果输出给用户。

哈佛结构是为了高速数据处理而采用的,因为可以同时读取指令和数据(分开存储的)。大大提高了数据吞吐率,缺点是结构复杂。通用微机指令和数据是混合存储的,结构上简单,成本低。假设是哈佛结构:你就得在电脑安装两块硬盘,一块装程序,一块装数据,内存装两根,一根储存指令,一根存储数据……

是什么结构要看总线结构的。51单片机虽然数据指令存储区是分开的,但总线是分时复用的,所以顶多算改进型的哈佛结构。ARM9虽然是哈佛结构,但是之前的版本也还是冯·诺依曼结构。早期的X86能迅速占有市场,一条很重要的原因,正是靠了冯·诺依曼这种实现简单,成本低的总线结构。处理器虽然外部总线上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经算是改进型哈佛结构的了。至于优缺点,哈佛结构就是复杂,对外围设备的连接与处理要求高,十分不适合外围存储器的扩展。所以早期通用CPU难以采用这种结构。而单片机,由于内部集成了所需的存储器,所以采用哈佛结构也未尝不可。处理器,依托CACHE的存在,已经很好的将二者统一起来了。

,