某计算机系统采用扩展操作码技术,指令字长32位,支持三地址、二地址、一地址和零地址指令。若三地址指令使用8位操作码(OP3),每个地址码字段占8位,当需要扩展为二地址指令时,以下哪种操作是可行的
答案解析
核心考点说明:本题考察扩展操作码技术的具体实现方式,需要理解不同地址数指令之间的操作码扩展关系。
解题思路分析:
1. 扩展操作码的基本原理是将不用的地址码部分转为操作码
2. 三地址指令已有OP3(8位)和三个8位地址码
3. 扩展为二地址指令时,可将其中一个地址码字段转为操作码扩展部分
4. 此时操作码变为OP3+OP4(8+8=16位),保留两个地址码字段
5. 需要确保扩展后的操作码不能与原有操作码冲突
每个选项详细分析:
A选项错误。扩展操作码需要将整个地址码字段转为操作码,而不是部分
B选项错误。将所有地址码字段转为操作码会导致无法表示二地址指令
C选项正确。将操作码扩展为16位,保留两个8位地址码字段符合二地址指令要求
D选项错误。扩展为24位操作码后只能形成零地址或一地址指令
易错点提醒:
1. 不理解扩展操作码需要按字段整体扩展
2. 混淆不同地址数指令的格式变化
3. 忽略操作码扩展时的冲突避免问题
4. 误以为操作码扩展可以随意分配位数
正确答案:C