ARM-V7架构
运行模式
- 用户模式(USR) 资源访问受限
- 系统模式(SYS) 与用户模式共用寄存器,资源访问不受限制
- 一般中断(IRQ)一般中断模式,硬件产生中断信号
- 快速中断模式(FIQ) 时间紧急情况下,高速信号的传输、采集
- SVC 管理模式 默认模式,系统初始化
- Abort(ABT) 数据访问终止模式 段错误 非法访问地址或寄存器
- UND 未定义指令模式 程序跑飞 篡改
寄存器组
r0~r3 函数的参数,暂存数据
r4~r11 函数的局部变量、暂存数据
r12 存放函数调用过程中上一次的Sp指针的值
r13 (sp) 函数堆栈寄存器
r14(lr) 函数的返回地址
r15(pc)程序计数器
程序状态寄存器
CPSR:运算标志位、中断禁止位、当前运行模式标志 (位状态)
SPSR: CPSR的快速存档,当异常发生时,SPSR用于保存CPSR的当前值,从异常退出时则可由SPSR来恢复CPSR。由于用户模式和系统模式不属于异常模式,它们没有SPSR,当在这两种模式下访问SPSR,结果是未知的