Skip to content

指令执行过程

考情分析

指令执行过程是选择题和综合题的高频考点。408真题考过"某微操作属于哪个周期""写出某指令的微操作序列",理解每个阶段的数据流是解题关键。

指令周期的四个阶段

一条指令的完整执行经过以下阶段(并非每条指令都有全部四个阶段):

取指周期间址周期(可选)执行周期中断周期(可选)

每个阶段称为一个机器周期(也叫CPU周期),每个机器周期由若干个时钟周期(节拍)组成。

取指周期(Fetch Cycle)

任务:从内存中读取指令,送入 IR。

微操作序列:

步骤操作说明
1PCMAR将 PC 内容(指令地址)送入 MAR
21R(读命令)启动存储器读操作
3MDRM[MAR]从内存读指令到 MDR
4MDRIR将指令送入指令寄存器
5OP(IR)CU操作码送控制单元译码
6(PC)+1PCPC 自增,指向下一条指令

间址周期(Indirect Addressing Cycle)

任务:当指令采用间接寻址时,从内存中取出有效地址。

触发条件:指令中的寻址特征位 I=1(表示间接寻址)。

微操作序列:

步骤操作说明
1Ad(IR)MAR将指令中的形式地址送 MAR
21R读内存
3MDRM[MAR]读出的内容就是有效地址
4MDRMAR有效地址送 MAR(准备执行周期访存)

多重间接寻址时重复上述过程,直至取到最终有效地址。

执行周期(Execute Cycle)

任务:执行指令规定的操作。不同指令的执行周期微操作完全不同。

以几类典型指令为例:

加法指令 ADD X(直接寻址)

ACCACC+M[X]
步骤操作
1Ad(IR)MAR
2M[MAR]MDR
3ACC+MDRACC

存数指令 STA X(将 ACC 内容写入内存 X)

M[X]ACC
步骤操作
1Ad(IR)MAR
2ACCMDR
31W(写命令),MDRM[MAR]

转移指令 JMP X(无条件转移)

PCX
步骤操作
1Ad(IR)PC

转移指令的执行周期最简单,只需修改 PC 即可。

条件转移指令 BZ X(结果为零时转移)

步骤操作
1ZF=1,则 Ad(IR)PC;否则不操作

中断周期(Interrupt Cycle)

任务:在每条指令执行结束后,检查是否有中断请求。若有,则保护断点并转入中断服务程序。

微操作序列:

步骤操作说明
10EINT关中断(防止保存断点过程被打断)
2SP1SPSPMAR堆栈指针减1,准备压栈
31W写内存
4PCMDRMDRM[MAR]将 PC(断点地址)压入栈
5向量地址 PC转入中断服务程序

指令周期流程图

机器周期与时钟周期

  • 时钟周期(节拍):CPU 最小时间单位,T=1/f
  • 机器周期:完成一个基本操作(如一次访存)所需的时间,通常包含若干时钟周期
  • 指令周期:执行一条完整指令所需时间,通常包含 2~5 个机器周期
指令周期机器周期时钟周期

考点清单

  • 四个周期的顺序:取指 → 间址(可选)→ 执行 → 中断(可选)
  • 取指周期结束时 PC 已完成 +1
  • 间址周期只在间接寻址时才有
  • 中断周期的核心动作:关中断 + 保存断点 + 跳转
  • 执行周期的微操作因指令不同而不同,转移指令只需修改 PC
  • MAR 和 MDR 是 CPU 与主存之间的接口,所有访存操作都经过它们

真题练习

相关真题(6题)

2026Q17选择题2分

不同指令类型对PC的影响

2022Q43综合题15分

CPU数据通路与微操作序列综合题

2019Q17选择题2分

指令执行过程中使用的功能部件

2015Q43综合题13分

CPU单总线数据通路与微操作序列综合题

2011Q19选择题2分

指令周期与访存、中断的关系

2009Q11选择题2分

CPU区分指令和数据的依据