MIPS 寄存器

MIPS架构的处理器使用32个通用寄存器和3个特殊寄存器。通用寄存器包括$0-$31,其中$0始终为0,$1用于汇编内部,$v0和$v1存储函数返回值,$a0-$a3传递参数,$t0-$t7和$s0-$s7分别作为临时和保存寄存器。特殊寄存器包含PC、HI和LO,用于乘除运算。堆栈操作通过通用寄存器和内存完成,$sp和$ra在函数调用中起关键作用。

概要

MIPS寄存器

RISC的一个显著特点就是大量使用寄存器。因为寄存器的存取可以在一个时钟周期内完成,同时简化了寻找方式,所以,MIPS的指令中除了加载/存储指令以外,都使用寄存器或者立即数作为操作数,以便让编译器通过保持对寄存器内数据的频繁存取进一步优化代码的生成性能。
  MIPS32寄存器分为两类:通用寄存器(GPR)和特殊寄存器。

通用寄存器(GPR)

在MIPS体系结构中有32个通用寄存器,在汇编程序中可以用编号$0~$31表示,也可以用寄存器的名字表示,如sp、sp、spt1、$ta等,如图,堆栈是从内存的高地址方向向低地址方向增长的。

编号 寄存器名称 寄存器描述
0 zero 第0号寄存器,其值始终为0
1 $at 保留寄存器
2~3 $v0~v1 values, 保存表达式或函数返回结果
4-7 $a0~a3 aruments, 作为函数的前4个参数
8~15 t0 t0~t0 t7 temporaries,供汇编程序使用的临时寄存器
16~23 s0 s0~s0 s7 saved values,子函数使用时需要先保存原寄存器的值
24~25 $t8~t9 temporaries, 供汇编程序的临时寄存器,补充$t0~t7
26~27 k0 k0~k0 k1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值