指令的一般格式展开目录
操作码展开目录
反应机器做什么操作。操作码在 RISC 中长度固定,而在 CISC 中长度可变。CISC 的长度可变是指利用指令的其他字段对操作码字段进行扩展
扩展操作码技术展开目录
操作码的位数随地址数的减少而增加三地址指令操作码每减少一种最多可构成 $2^4$ 种二地址指令
二地址指令操作码每减少一种最多可构成 $2^4$ 种一地址指令
地址码展开目录
四地址展开目录
$A_1$ 第一操作地址,$A_2$ 第二操作数地址,$A_3$ 结果的地址,$A_4$ 下一条指令地址。$(A_1) OP (A_2) \to A_3$
4 次访存,寻址范围:$2^6 = 64$
三地址展开目录
在四地址的基础上,用 PC 代替 $A_4$$(A_1) OP (A_2) \to A_3$。4 次访存,寻址范围:$2^8 = 256$
二地址展开目录
在三地址的基础上,将 $A_3$ 用 $A_1$ 或 $A_2$ 代替$(A_1) OP (A_2) \to A_1$ 或 $(A_1) OP (A_2) \to A_2$。4 次访存,寻址范围:$2^{12}$
一地址展开目录
在二地址的基础上,用 ACC 代替 $A_1$ 或 $A_2$$ACC OP (A_1) \to ACC$。4 次访存,寻址范围:$2^{24}$
零地址展开目录
直接对 ACC 进行各种判断的指令
指令字长展开目录
指令字长决定于:操作码的长度、操作数地址的长度、操作数地址的个数
指令字长固定,则指令字长 = 存储字长;指令字长可变,则按字节的倍数变化
总结展开目录
当用一些硬件资源代替指令字种的地址码字段后:
- 可扩大指令的寻址范围
- 可缩短指令字长
- 可减少访存次数
当指令的地址字段为寄存器时:
三地址 $OP R_1,R_2,R_3$
二地址 $OP R_1,R_2$
一地址 $OP R_1$
- 可缩短指令字长
- 指令执行阶段不访存