MIPS 中 $zero 寄存器有什么用?

What is the use of a $zero register in MIPS?

MIPS 中 $zero 寄存器有什么用?

这是什么意思?

lw $t0, myInteger($zero)

零寄存器始终保存常量 0。除了 0 恰好是一个非常有用的常量之外,它并没有什么特别之处。它非常有用,以至于 MIPS 设计者专门用一个寄存器来保存它的值。 (这样您就不必浪费另一个寄存器或任何内存来保存该值。)


编辑:

至于那行代码是什么意思的问题,它将 MEMORY[myInteger + 0] 中的单词加载到 $t0 寄存器中。 lw 命令接受一个常量 (myInteger) 和一个寄存器 ($zero)。不知道为什么会这样,但这就是说明的工作原理。由于myInteger被用作常数,寄存器必须提供,所以使用$zero