我是汇编语言的新手。我正在阅读 MIPS 架构,并且知道您有addi
操作码,但没有subi
操作码。任何人都可以解释一下为什么我们没有subi
操作码?
提前致谢。
答案 0 :(得分:17)
创建指令集时,您会遇到一些约束,例如您可以创建的指令总数。 MIPS创建者意识到不需要subi
(因为您可以使用2的补码添加addi
的负数),他们只是决定放弃制作该指令。它可能是为了节省指令的数量,或仅仅是因为它不需要。
答案 1 :(得分:4)
addi
和addiu
都将16位带符号的immediates视为操作数,因此添加单独的subi
和subiu
操作码是没有意义的。