指令格式(地址码)

OP: 指令的操作码OP表示该指令应进行什么性质的操作,如进行加、减、乘、除、取数、存数等等。

An: (A1)表示A1所指向的地址中的内容(指针所指位置的内容)

1.四地址指令 | OP | A1 | A2 | A3 | A4 |

解释: 指令含义:(A1)OP(A2)->A3,
A4=下一条将要执行指令的地址
完成一条指令需要访存4次,取指->读A1->读A2->写A3 正常情况下:取指令之后PC+1,指向下一条指令

四地址指令:执行指令后,将PC的值修改位A4所指地址(跳着执行指令)

2.三地址指令 | OP | A1 | A2 | A3 |

解释:常用于需要两个操作数的算术运算、逻辑运算相关指令

指令含义:(A1)OP(A2)->A3

完成一条指令需要访存4次,取指->读A1->读A2->写A3

3.二地址指令 | OP | A1 | A2 |

常用于需要两个操作数的算术运算、逻辑运算相关指令

指令含义:(A1)OP(A2)->A1

完成一条指令需要访存4次,取指->读A1->读A2->写A2

4.一地址指令 | OP | A1 |

只需要单操作数,如加1、减1、取反、求补等
指令含义:OP(A1)->A1, 完成一条指令需要3次访存:取指->读A1->写A1
需要两个操作数,但其中一个操作数隐含在某个寄存器中(如隐含在ACC)
指令含义:(ACC)OP(A1)->ACC 完成一条指定需要2次访存:取指->读A1

定长操作码
定长操作码:在指令字的最高位部分分配固定的若干位(定长)表示操作码。
-一般n为操作码字段的指令系统最大能够表示2^{n}条指令
定长操作码

优点:计算机的硬件设计简里,指令译码和执行的速度快。
缺点:当指令数量增多、指令学单独为操作码划分出固定的多位后,留给表示操作数 地址的位数就会严重不足。
适用环境:适用于字长较长的计算机系统,如32位或32位以上。

变长操作码

优点:在比较短的指令字中,既能表示出比较多的指令条数又能尽量满足操作数地址 的要求。
缺点:计算机的硬件设计复杂,指令译码和执行速度较慢;
适用环境:适用于字长较短的计算机系统,如16位或16位以下。

扩展操作码
(不定长操作码):全部指令的操作码字段的位数不固定,且分散地放在指令字的不同位置上。

在这里插入图片描述

留下1111作为扩展窗口与后四位组成一个8位操作码字段;

在这里插入图片描述

留下1111作为扩展窗口与后四位组成一个12位的操作码字段;

在这里插入图片描述

留下1111作为扩展窗口与后四位组成一个16位的操作码字段;
在这里插入图片描述
注意:操作码编码的时候,短码不能是长码的前缀;扩展窗口可以留下多个。

例题1:
指令格式(地址码)_第1张图片
解答:
指令格式(地址码)_第2张图片
指令格式(地址码)_第3张图片
指令格式(地址码)_第4张图片
例题2.在这里插入图片描述
A1,A2,A3 和 A4 都进行了一个访存 故一共访存4次

例题3.

例题4.

例题5.

例题6.
例题7.

你可能感兴趣的:(计算机组成原理,硬件架构)