1.指令周期
取出并执行一条指令所需的全部时间
2.每条指令的周期不同
由于各指令的功能不同,他们的周期也是不尽相同的。
eg:NOP(空操作):只有取指周期
ADD(加操作):指令周期有取指周期和执行周期两个阶段
1.取指周期:取指周期的任务是根据PC中的内容从主存中取出指令代码并存放在IR中。而PC中存放的是指令的地址,根据这个地址从内存单元取出的是指令,并放在指令寄存器IR中,取指令的同时,PC加1。
2.间址周期:间址周期的任务是取操作数有效地址,以一次间址为例,将指令中的地址码送到MAR并送至地址总线,此后CU向存储器发读命令,以获取有效地址并存至MDR。
3.执行周期:执行周期的任务是根据IR中的指令字的操作码和操作数通过ALU操作产生执行结果。不同指令的执行周期操作不同,因此没有统一的数据流向。
4.中断周期:中断周期的任务是处理中断请求。假设程序断点存入堆栈中,并用SP指示栈顶地址,而且进栈操作是先修改栈顶指针,后存入数据。
指令周期流程图