ARM架构(二)—— arm v7/v8/v9寄存器介绍
1、ARM v7寄存器
1.1 通用寄存器
V7 V8开始 FIQ个IRQ优先级一样,
通用寄存器:31个
1.2 程序状态寄存器
CPSR是程序状态毒存器,保存条件标志位,中断禁止位,当前处理器模式等控制和状态位。每种异常模式下还存在SPSR,保存进入异常模式前的CPSR寄存器值,用于异常处理完成后恢复CPSR的状态。User和Sys不属于异常模式,没有CPSR寄存器,在User模式下,受限的CPSR存器称谓APSR(Application Program Status Register)。ARMV7-A中CPSR寄存器的信息如下图所示。
Field | 作用 |
---|---|
N | ALU返回运算结果是否为负数 |
Z | ALU返回运算结果是否为0 |
C | ALU运算是否发生进位 |
V | ALU运算是否发生溢出 |
Q | cumulative saturation |
J | ARM是否处于 Jazelle 状态 |
E | 控制load/store字节序 |
A | disables asynchronous aborts,User模式不能操作 |
I | 使能/去使能IRQ,User模式不能操作 |
F | 使能/去使能FIQ,User模式不能操作 |
T | ARM和Thumb状态标志位 |
GE | 用于某些SIMD(Single Instruction, Multiple Data)指令 |
M[4:0] | 处理器模式:FIQ,IRQ,ABT,SVC,UND,MON,HYP。User模式不能操作 |
1.3 Coprocessor 15(CP15)寄存器
在ARM v7 上所有的系统寄存器都是按CP15寄存器操作,使用MRC 和MCR指令操作。【ARM V8和ARM V9之后可以直接操作系统寄存器,通过MRS指令操作。】
————————————————————————————————————————————————
MRC p15,0,r0,c1,c0,0; Read System Contril Register configuration data 读协处理器到通用寄存器
ORR r0,r0,#(1
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。