作用
控制器是整个计算机系统的指挥中心
在控制器的指挥控制下,运算器、存储器和输入/输出设备等部件协同工作,构成了一台完整的通用计算机
控制器根据程序预定的指令执行顺序,从主存取出一条指令,按该指令的功能,用硬件产生所需的带有时序标志的一系列微操作控制信号,控制计算机内各功能部件的操作,协调和指挥整个计算机完成指令的功能
关注点
1. 指令寄存器(IR)
指令寄存器(Instruction Register,IR)用来保存当前正在执行的一条指令。
当执行一条指令时,先把该指令从主存读取到数据寄存器中,然后再传送至指令寄存器。
一条指令被划分为操作码和地址码2个字段。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。指令译码器(Instruction Decoder,ID)就是完成这项工作的。
指令译码器对来自指令寄存器的操作码部分进行译码,以产生操作性质的控制电位,并将其送到微操作控制线路上,在时序部件定时信号作用下,产生具体的操作控制信号。
指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。
2. 程序计数器(PC)
程序计数器(Program Counter,PC)用来指出下一条指令在主存储器中的单元地址。
它保存着下一条要执行的指令,也就是说当一个程序要执行的时候,会把这个程序的起始地址存到这个PC中,如果这个指令被执行的话也不用担心,CPU会自动修改,使得PC存放下一条要执行的指令。
3. 地址寄存器(AR)
地址寄存器(Address Register,AR)用来保存CPU当前所访问的主存单元的地址。
由于在主存和CPU之间存在操作速度上的差异,所以必须使用地址寄存器来暂时保存主存的地址信息,直到主存的存取操作完成为止。
当CPU和主存进行信息交换,即CPU向主存存入/取出数据时,或者CPU从主存中读出指令时,都要使用地址寄存器和数据寄存器。
如果我们把外围设备的设备地址作为像主存的地址单元那样来看待,那么,当CPU和外围设备交换信息时,我们同样要使用地址寄存器和数据寄存器。
4. 指令译码器(ID)
指令译码器(Instruction Decoder,ID)指令分为操作码和地址码两部分,为了能执行任何给定的指令,必须对操作码进行分析,以便识别所完成的操作
ID就是对指令中的操作码字段进行分析解释,识别该指令规定的操作,向操作控制器发出具体的控制信号,控制各部件工作,完成所需的功能