[prev] 22 [next]

MIPS Registers (cont)

Registers and their usage

Reg Name Notes
$0 zero  the value 0, not changeable
$1 $at  assembler temporary; reserved for assembler use
$2 $v0  value from expression evaluation or function return
$3 $v1  value from expression evaluation or function return
$4 $a0  first argument to a function/subroutine, if needed
$5 $a1  second argument to a function/subroutine, if needed
$6 $a2  third argument to a function/subroutine, if needed
$7 $a3  fourth argument to a function/subroutine, if needed
$8..$15 $t0..$t7  temporary; must be saved by caller to subroutine;
subroutine can overwrite