MIPs 汇编中的操作码和函数代码

Opcode and funct code in MIPs Assembly

我的教授需要很长时间才能回复电子邮件,从星期六开始就合理了,所以我只想在这里问一下。

我读到 here 函数代码定义了正在使用的函数是什么(add、sub 等),操作码定义了格式 (R,I,J)...但是如何如果 I 格式没有功能部分,它知道要使用什么功能吗?它有操作码,rs,rt,立即。我认为 immediate 就像 # 一样,例如 addi, $t0, $s0, 1 。

任何人都可以阐明操作码和功能的具体作用吗?我是 Assembly 的新手。

谢谢。

R 类指令共享相同的操作码 (000000),因此额外的 6 位(功能位)用于分隔不同的指令。

I 型指令没有任何剩余的 space 功能位,因此它们都有不同的操作码。

每条指令都必须是唯一可识别的,有些指令的标识符是 6 位,有些是 12 位。这就是指令集设计者选择在不同指令之间划分可能编码的方式。