首页 > 代码库 > (转)ARM汇编学习笔记——CPSR寄存器、CPSR_C

(转)ARM汇编学习笔记——CPSR寄存器、CPSR_C

转自:http://blog.csdn.net/cos_sin_tan/article/details/7667582

内容有所改动

1:ARM每种工作模式除R0~R15共16个寄存器外,还有第17个寄存器CPSR,叫做 “当前程序状态寄存器”,CPSR中一些位被用于标识各种状态,一些位被用于标识当前处于什么工作模式。

技术分享

2:这个状态寄存器的32位可以分为四个8位的域。

技术分享

 

其中cpsr_c代表的是cpsr寄存器的低8位,也就是控制位

有些程序里这样写
msr cpsr_c, #0xd2       @ 进入中断模式

这样的语句时,就是在更改这8位的值为0xd2,根据下图,知道是进入中断模式

技术分享

(转)ARM汇编学习笔记——CPSR寄存器、CPSR_C