cpu
CPU的工作原理就象一个工厂对产品的加工过程:进入工厂的原料(指令),经过物资分配部门(控制单元)的调度分配,被送往生产线(逻辑运算单元),生产出成品(处理后的数据)后,再存储在仓库(存储器)中,最后等着拿到市场上去卖(交由应用程序使用)。
传统的CPU由运算器和控制器两大部分组成。但是随着高密度集成电路技术的发展,一些CPU外部的逻辑功能部件纷纷移入CPU内部。这样,CPU就由运算器、cache、控制器三大部分组成。控制器由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器五部分组成。
1.程序计数器(PC):确定下一条指令在主存中的地址。当CPU取得当前要执行的指令后,通过修改程序计数器中的值来确定下一条指令在主存中的存放地址。
2.缓冲寄存器(DR):暂时存放CPU从主存读来的一条指令字或一个数据字。当CPU要将数据传送给主存时,亦先将数据保存到缓冲寄存器中。
注意:
缓冲寄存器的作用是:
⑴作为CPU和主存、外部设备之间的信息中转站。
⑵对数据起缓冲作用,补偿CPU和主存、外部设备之间的操作时间差异。
⑶缓冲寄存器为算术逻辑单元提供一个操作数。
3.指令寄存器(IR):保存当前CPU正在执行的一条指令。一条指令由地址码和操作码两部分组成。为了能执行任何给定的指令,必须先确定该指令的操作性质,即指令译码器先要对指令中的操作码进行译码,以便向控制器发出具体操作的特定信号。
4.地址寄存器(MAR):保存当前CPU所要访问的主存单元或I/O端口的地址,是CPU与内存或外设之间的地址缓冲寄存器。
5.累加寄存器(AC):为算术逻辑单元(ALU)提供一个操作数,并用来保存操作的结果。算术逻辑单元最基本的操作是加法,这就是累加器名称的由来。显然,在一个算术逻辑单元中,至少有一个累加器。
6.状态寄存器:用来保存算术运算指令、逻辑运算指令及各类测试指令的状态结果,为后续指令的执行提供判断条件。
一般指令的执行过程:
从内存取指令,
程序计数寄存器+1,
分析指令,
执行一系列微指令,
根据程序计数器寄存器数值取下一指令
如此循环