9.CPU的控制器和运算器
转:https://www.cnblogs.com/sum-41/p/11583567.html
控制器
控制器是CPU的组成部分,用于协调和控制计算机的运行,它的构成如下图所示:
下面逐一简单介绍。
程序计数器(Program Counter)
简称PC,用来存储从内存提取的下一条指令的地址。当CPU执行一条指令时,首先需要根据PC中存放的指令地址,将指令由内存取到指令寄存器中,此过程称为“取指令”。与此同时,PC中的地址或自动加1或由转移指针给出下一条指令的地址,此后经过分析指令,执行指令,完成第一条指令的执行,而后根据PC取出第二条指令的地址,如此循环,执行每一条指令,保证程序能够连续地执行下去。
时序发生器
用于发送时序脉冲,CPU依据不同的时序脉冲有节奏地进行工作,类似于CPU的节拍器。
指令编译器
用于翻译指令及控制传输指令包含的数据。
指令寄存器
用于缓存从内存或高速缓存里取出的指令,CPU执行指令时,就可以从指令寄存器中取出相关指令来进行执行。
主存地址寄存器
保存当前CPU正要访问的内存单元的地址,通过总线跟主存通信。
主存数据寄存器
保存当前CPU正要读或写的主存数据,通过总线与主存通信。
通用寄存器
用于暂时存放或传送数据或指令。
运算器
运算器是用来进行数据运算加工的。
数据缓冲器
分为输入缓冲和输出缓冲,输入缓冲暂时存放外设送过来的数据,输出缓冲暂时存放送往外设的数据。
ALU
算数逻辑单元,是运算器的主要部件,能完成常见的位运算(左移、右移、与、或、非等)和算术运算(加减乘除等)。
状态字寄存器
存放运算状态(条件码、进位、溢出、结果正负等)和运算控制信息。
通用寄存器
暂时存放或传送数据或指令,保存ALU的运算中间结果。