这段时间一直在学习MIPS32汇编。
MIPS32并没有强制指定通用寄存器的使用规则(除了0号寄存器始终为0,比较特殊),但是在实际使用中大家都会遵循一系列的约定。这里以表格的方式予以展示,当作是做个笔记,方便自己以后回看。
名称 | 寄存器号 | 用途 | 调用时是否保存 |
---|---|---|---|
$zero | 0 | 常数0 | 不适用 |
$v0~$v1 | 2~3 | 计算结果和表达式求值 | 否 |
$a0~$a3 | 4~7 | 参数 | 否 |
$t0~$t7 | 8~15 | 临时变量 | 否 |
$s0~$s7 | 16~23 | 保存的寄存器 | 是 |
$t8~$t9 | 24~25 |