ARM共有37个寄存器,都是32位长度
37个寄存器中有30个为“通用”型,1个固定用PC,一个固定用CPSR,5个固定用作异常模式下的SPSR。
CPSR程序状态寄存器
条件位,常见的运算状态:(默认为0)
-N = Negative result from ALU (ALU运算时负结果则置1)
-Z = Zero result from ALU (ALU运算时零结果则置1)
-C = ALU operation Carried out(进位标志位则置1)
-V = ALU operation Carried out(溢出是则置1)
Mode位(理论上可以有32种模式)
实际ARM只有7种工作模式
T位:
-仅ARM xT架构支持
-T = 0:处理器处于ARM状态(默认)
-T = 1:处理器处于Thumb状态
中断禁止位:
-I = 1:禁止 IRQ
-F = 1:禁止FIQ(快速中断)