第七章指令系统 71机器指令 7.2操作数类型和操作类型 73寻址方式 74指令格式举例 75RISC技术
第七章 指 令 系 统 7.1 机器指令 7.2 操作数类型和操作类型 7.3 寻址方式 7.4 指令格式举例 7.5 RISC 技术
73寻址方式 寻址方式确定本条指令的操作数地址 下一条欲执行指令的指令地址 指令寻址 寻址方式 数据寻址
7.3 寻 址 方 式 寻址方式 确定 本条指令 的 操作数地址 下一条 欲执行 指令 的 指令地址 指令寻址 数据寻址 寻址方式
73寻址方式 、指令寻址 顺序(PC)+1 PC 跳跃由转移指令指出 指令地址指令 指令地址寻址方式 W PC LDA 1000 +1 ADD 1001 顺序寻址 DEC 1200 顺序寻址 23456789 JMP 顺序寻址 LDA 2000 SUB 2001 INC STA 2500 跳跃寻址 LDA 1100 顺序寻址
7.3 寻 址 方 式 一、指令寻址 顺序 ( PC ) + 1 PC 跳跃 由转移指令指出 LDA 1000 ADD 1001 DEC 1200 JMP 7 LDA 2000 SUB 2001 INC STA 2500 LDA 1100 ... 0 1 2 3 4 5 6 7 8 9 PC +1 指令地址 指令 指令地址寻址方式 1 顺序寻址 2 顺序寻址 3 顺序寻址 7 跳跃寻址 8 顺序寻址
二、数据寻址 73 操作码寻址特征形式地址A 形式地址指令字中的地址 有效地址操作数的真实地址 约定指令字长=存储字长=机器字长 1.立即寻址 形式地址A就是操作数 立即寻址特征 OP# 立即数可正可负补码 指令执行阶段不访存 A的位数限制了立即数的范围
二、数据寻址 形式地址 指令字中的地址 有效地址 操作数的真实地址 约定 指令字长 = 存储字长= 机器字长 1. 立即寻址 • 指令执行阶段不访存 • A 的位数限制了立即数的范围 操作码 寻址特征 形式地址A OP # A 立即寻址特征 立即数 可正可负 补码 形式地址A 就是操作数 7.3
2.直接寻址 73 EA=A有效地址由形式地址直接给出 寻址特征 主存 LDA A A操作数 ACO 执行阶段访问一次存储器 A的位数决定了该指令操作数的寻址范围 操作数的地址不易修改(必须修改A)
2. 直接寻址 EA = A 操作数 寻址特征 主存 LDA A A ACC • 执行阶段访问一次存储器 • A 的位数决定了该指令操作数的寻址范围 • 操作数的地址不易修改(必须修改A) 有效地址由形式地址直接给出 7.3
3.隐含寻址 73 操作数地址隐含在操作码中 寻址特征 主存 ADD ACO A操作数 另一个操作数 隐含在ACC中 ALU 暂存 如8086 MUL指令被乘数隐含在AX(16位)或AL(8位)中 Mos指令源操作数的地址隐含在SI中 目的操作数的地址隐含在DI中 指令字中少了一个地址字段,可缩短指令字长
3. 隐含寻址 操作数地址隐含在操作码中 ADD A 操作数 寻址特征 主存 A ACC 暂存 ALU 另一个操作数 隐含在ACC 中 如 8086 MUL 指令 被乘数隐含在AX(16位)或 AL(8位)中 MOVS 指令 源操作数的地址隐含在 SI 中 目的操作数的地址隐含在 DI 中 • 指令字中少了一个地址字段,可缩短指令字长 7.3
4.间接寻址 73 EA=(A)有效地址由形式地址间接提供 寻址特征 主存 寻址特征 主存 OP OP EA A A 次间址七EA操作数」多次间址 AIO EA 执行指令阶段2次访存 EA操作数 可扩大寻址范围 便于编制程序 多次访存
4. 间接寻址 EA =(A) 有效地址由形式地址间接提供 OP A 寻址特征 A EA 主存 EA A1 EA A1 主存 EA 1 0 • 执行指令阶段 2 次访存 • 可扩大寻址范围 • 便于编制程序 OP A 寻址特征 A 一次间址 操作数 多次间址 操作数 多次访存 7.3
间接寻址编程举例 73 主程序 子程序 80转子程序 81 201转子程序 202 @间址特征 JMP aA (A)=202
… …… 主程序 子程序 … 80 81 201 202 转 子程序 转 子程序 间接寻址编程举例 ((A) = 81 A) = 202 … … @ 间址特征 7.3 JMP @ A … … …… …
5.寄存器寻址 73 EA=R;有效地址即为寄存器编号 寻址特征 OP R R;操作数 R 寄存器 执行阶段不访存,只访问寄存器,执行速度快 寄存器个数有限,可缩短指令字长
5. 寄存器寻址 EA = Ri • 执行阶段不访存,只访问寄存器,执行速度快 OP Ri 寻址特征 • 寄存器个数有限,可缩短指令字长 操作数 … … … … … … R0 Ri Rn 寄存器 有效地址即为寄存器编号 7.3
6.寄存器间接寻址 73 EA=(R;)有效地址在寄存器中 寻址特征 OP R 主存 0 R;地址 操作数 R 寄存器 有效地址在寄存器中,操作数在存储器中,执行阶段访存 便于编制循环程序
EA = ( Ri ) 6. 寄存器间接寻址 • 有效地址在寄存器中,操作数在存储器中,执行阶段访存 操作数 OP Ri 主存 寻址特征 • 便于编制循环程序 地址 … … … … … … R0 Ri Rn 寄存器 有效地址在寄存器中 7.3