Arm学习笔记1——Arm寄存器与模式的关系

ARM微处理器上有37个32位的寄存器,其中有6个状态寄存器(一个CPSR,5个SPSR),其它31个为通用寄存器。在ARM的不同模式下,可以访问的物理寄存器是不同,如下图所示:

Arm学习笔记1——Arm寄存器与模式的关系

从图中可知,用户模式和系统模式使用相同的物理寄存器,R0-R15,CPSR,共17个物理寄存器;

FIQ模式(快速中断请求模式)中:R0-R7,R15,CPSR是和用户模式相同的物理寄存器,R8-R14是FIQ模式专有的;

IRQ模式(中断请求模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是IRQ模式专有的

SVC模式(操作系统保护模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是SVC模式专有的

Undef模式(未定义模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是Undef模式专有的

Abort模式(终止模式)中:R0-R12,R15,CPSR和用户模式共用相同的物理寄存器,R13,R14,SPSR是Abort模式专有的

注:R13:通常作为栈指针用

  R14:link return 寄存器,在子程序调用和异常发生时保存返回地址

  R15:是PC,程序计数器,保存取指地址

  CPSR:ARM的状态寄存器

  SPSR:CPSR的备份寄存器

Arm学习笔记1——Arm寄存器与模式的关系

上一篇:第二十一课:反磁性 顺磁性 铁磁性


下一篇:uva 11294 (poj 3648 2-SAT)