2.1.1 冯·诺依曼体系结构
冯·诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。人们把冯·诺依曼的这个理论称为冯·诺依曼体系结构,冯·诺依曼体系结构如图2-2所示。从ENIAC到当前最先进的计算机都采用的是冯·诺依曼体系结构。所以冯·诺依曼是当之无愧的数字计算机之父。
图2-2 冯·诺依曼体系结构
冯·诺依曼模型定义了计算机内部的结构。冯·诺依曼模型主要可归纳为以下6点:
①采用存储程序方式,指令和数据不加区别混合存储在同一个存储器中,(数据和程序在内存中是没有区别的,它们都是内存中的数据,当EIP指针指向CPU就加载那段内存中的数据,如果是不正确的指令格式,CPU就会发生错误中断。在现在CPU的保护模式中,每个内存段都有其描述符,这个描述符记录着这个内存段的访问权限(可读、可写、可执行)。这就变相地指定了哪些内存中存储的是指令,哪些是数据。
指令和数据都可以送到运算器进行运算,即由指令组成的程序是可以修改的。
②存储器是按地址访问的线性编址的一维结构,每个单元的位数是固定的。
③指令由操作码和地址组成。操作码指明本指令的操作类型,地址码指明操作数和地址。操作数本身无数据类型标志,它的数据类型由操作码确定。
④通过执行指令直接发出控制信号控制计算机的操作。指令在存储器中按其执行顺序存放,由指令计数器指明要执行的指令所在的单元地址。指令计数器只有一个,一般按顺序递增,但执行顺序可按运算结果或当时的外界条件而改变。
⑤以运算器为中心,I/O设备与存储器间的数据传送都要经过运算器。
⑥数据以二进制表示。
在冯·诺依曼模型中,控制器作为计算机的核心,对计算机的所有部件实施控制,协调整个系统有条不紊地工作。输入设备输入数据和程序,输入的数据和程序被存放到存储器(Memory)中。处理功能由运算器完成,运算器是执行算术和逻辑运算的部件,又称算术逻辑单元(Arithmetic Logic Unit,ALU)。程序的执行结果被输出设备输出。
现代计算机中,往往把运算器和控制器集成在一块芯片上,形成一个功能相对独立的逻辑器件,称为CPU(Central Processing Unit,中央处理单元,又称中央处理器)。把CPU、存储器组装在一个箱体内,称为主机。