0000 XXXX YYYY ZZZZ 000 XXXX YYYY ZZZZ15条三地址指令 1110 XXXX YYYY ZZZZ 1111 0000 YYYY ZZZZ 111 0001 YYYY ZZZZ 14条二地址指令 1111 1101 YYYY ZZZZ 1111 1110 0000 ZZZZ 111 1110 0001 ZZZZ 31条一地址指令 11111l1110Z7ZZ 计算机组成原理
计算机组成原理 11 15条三地址指令 14条二地址指令 31条一地址指令 0001 XXXX YYYY ZZZZ 1110 XXXX YYYY ZZZZ 1111 0000 YYYY ZZZZ 1111 0001 YYYY ZZZZ 1111 1101 YYYY ZZZZ ┆ ┆ 1111 1110 0000 ZZZZ 1111 1110 0001 ZZZZ 1111 1111 1110 ZZZZ ┆ 0000 XXXX YYYY ZZZZ
由此类堆,还可以把剩下的111,11充到Z地址码字 段而形成的16位操作码,这时还可由 111011111,1出16条零地址指令。 111111100000Z2ZZ 111111100001ZzZZ 31条一地址指令 111111111110ZZZZ 1111111111110000 1111111111110001 16条零地址指令 lill111111111111 除了这种安排外,还有多种其它安排方法。 如:形成15条三地址指令,12条二地址指令,31条一地址指令 16条零地址指令,共74条指令 实际的机器可以采用各种灵活的扩展方式,其思路与此类似 计算机组成原理 12
计算机组成原理 12 由此类堆,还可以把剩下的1111,1111,1111扩充到Z地址码字 段而形成的16位操作码,这时还可由 1111,1111,1111,0000~1111,1111,1111,1111给出16条零地址指令。 除了这种安排外,还有多种其它安排方法。 如:形成15条三地址指令,12条二地址指令,31条一地址指令, 16条零地址指令,共74条指令。 实际的机器可以采用各种灵活的扩展方式,其思路与此类似。 1111 1111 1111 0000 1111 1111 1111 0001 1111 1111 1111 1111 16 零
上述方法是在不增加指令长度的情况下,采用对地址少的指 令使用较长的操作码,对地址数多的指令使用较短的操作码 其实质是增加了指令的数量,丰富了指令的功能。 在可变长操作码的指令系统设计中,究竟使用何种扩展方法 为好,指令的使用频度(即在程序中出现的概率)是非常重要 的依据。即频度高的指令应分配短的操作码,频度低的指令则 分配较长的操作码。这样,既可有效地缩短操作码在程序中的 平均长度,节省存储空间,又可缩短常用指令的译码时间以提 高程序的运行速度。 其缺点是译码系统比固定操作码复杂,增加了设计控制器的 难度,需要更多的硬件作支持。 计算机组成原理 13
计算机组成原理 13 上述方法是在不增加指令长度的情况下,采用对地址少的指 令使用较长的操作码,对地址数多的指令使用较短的操作码。 其实质是增加了指令的数量,丰富了指令的功能。 在可变长操作码的指令系统设计中,究竟使用何种扩展方法 为好,指令的使用频度(即在程序中出现的概率)是非常重要 的依据。即频度高的指令应分配短的操作码,频度低的指令则 分配较长的操作码。这样,既可有效地缩短操作码在程序中的 平均长度,节省存储空间,又可缩短常用指令的译码时间以提 高程序的运行速度。 其缺点是译码系统比固定操作码复杂,增加了设计控制器的 难度,需要更多的硬件作支持
2.地址码 指令中的地址码用来指出该指令的源操作数地址(一个或两个 结果地址及下一条指令的地址。 这里的地址可以是主存地址,也可以是寄存器地址,甚至可 以是ⅣO设备的地址。 下面以主存地址为例,分析指令的地址码字段。 计算机组成原理 14
计算机组成原理 14 指令中的地址码用来指出该指令的源操作数地址(一个或两个)、 结果地址及下一条指令的地址。 这里的地址可以是主存地址,也可以是寄存器地址,甚至可 以是I/O设备的地址。 2.地址码 下面以主存地址为例,分析指令的地址码字段
(1)四地址指令 指令格式:oPA1A2A3A OP:操作码; A1:第一地址码,存放第一操作数; A2:第二地址码,存放第二操作数; 第三地址码,存放操作结果 A4:第四地址码,存放下条要执行指令的地址。 操作:(A1)OP(A2)→A3 计算机组成原理 15
计算机组成原理 15 OP : 操作码; A1:第一地址码,存放第一操作数; A2:第二地址码,存放第二操作数; A3:第三地址码,存放操作结果; A4:第四地址码,存放下条要执行指令的地址。 操作:(A1)OP(A2)→A3 (1) 四地址指令 指令格式: OP A1 A2 A3 A4