ARM的7种模式和37个寄存器

ARM有7种基本工作模式:
  User:非特权模式,大部分任务执行在这种模式

  FIQ:当一个高优先级(fast) 中断产生时将会进入这种模式
  IRQ:当一个低优先级(normal) 中断产生时将会进入这种模式
  Supervisor:当复位或软中断指令执行时将会进入这种模式
  Abort:当存取异常时将会进入这种模式
  Undef:当执行未定义指令时会进入这种模式

  System:使用和User模式相同寄存器集的特权模式

R13:
  也叫做SP(堆栈指针),通常用作于堆栈指针。

R14:
  也叫做LR(链接寄存器),通常用作于保存子程序或中断返回的地址,通常是产生中断或者跳转指令的下一条指令的地址(由于ARM中PC总是当前正在执行的指令地址+8,所以保存到LR中的地址应该总是PC-4)。

R15:
  也叫做PC(程序计数器),由于ARM采用流水线技术,所以PC总是指向正在取值的指令(ARM7为3级流水线,所以PC的值始终是当前正在执行的指令地址+8)。

CPSR:
  程序状态寄存器(Current Program Status Register),CPSR在用户级编程时用于存储条件码;CPSR包含条件码标志,中断禁止位,当前处理器模式以及其他状态和控制信息。

SPSR:
  程序状态保存寄存器(Current Program Status Register),SPSR用于保存CPSR的状态,以便异常返回后恢复异常发生时的工作状态。

转载于:https://www.cnblogs.com/sygpw/p/6829358.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值