MIPS中$ zero寄存器的用途是什么?
这是什么意思?
lw $t0, myInteger($zero)
答案 0 :(得分:7)
零寄存器始终保持常数0.除了事实上0恰好是一个非常有用的常数之外,它没有什么特别之处。非常有用,MIPS设计人员专注于寄存器来保持其价值。 (这样您就不必浪费另一个寄存器或任何存储器来保存该值。)
编辑:
至于代码行的含义,它会将MEMORY[myInteger + 0]
中的单词加载到$t0
寄存器中。 lw
命令同时采用常量(myInteger
)和寄存器($zero
)。不知道为什么会这样,但这就是指令的工作方式。由于myInteger
用作常量,因此提供了寄存器,因此使用了$zero
。