码迷,mamicode.com
首页 > 其他好文 > 详细

CPSR寄存器

时间:2014-12-08 15:14:07      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   ar   color   sp   div   log   ad   

 

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

    bubuko.com,布布扣

    其中cpsr_c代表的是这32位中的低8位,也就是控制位
    当你看到有些程序里这样写
    msr cpsr_c 0xd2                                       //msr是arm汇编中专门用来修改cpsr这样有特定功能的寄存器的指令

                                                                      //具体请参考Arm汇编手册和Arm体系架构手册

    这样的语句时,就是在更改这8位的状态

M控制位控制处理器模式,具体含义如下:

M[4:0] 处理器模式 可访问的寄存器

ob10000 user pc,r14~r0,CPSR

0b10001 FIQ PC,R14_FIQ-R8_FIQ,R7~R0,CPSR,SPSR_FIQ

0b10010 IRQ PC,R14_IRQ-R13_IRQ,R12~R0,CPSR,SPSR_IRQ

0B10011 SUPERVISOR PC,R14_SVC-R13_SVC,R12~R0,CPSR,SPSR_SVC

0b10111 ABORT PC,R14_ABT-R13_ABT,R12~R0,CPSR,SPSR_ABT

0b11011 UNDEFINEED PC,R14_UND-R8_UND,R12~R0,CPSR,SPSR_UND

0b11111 SYSTEM PC,R14-R0,CPSR(ARM V4以及更高版本)

CPSR寄存器

标签:style   blog   http   ar   color   sp   div   log   ad   

原文地址:http://www.cnblogs.com/liutingbl/p/4150925.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!