1—ARM中的寄存器
ARM共有37个寄存器。其中31个通用寄存器和6个状态寄存器。
一般通用寄存器R0-R12
R0-7为未分组寄存器;R8-12为分组寄存器。
未分组寄存器:在任何模式下,指向的都是同一个32位的物理寄存器。
分组寄存器:在不同的模式下,同一个寄存器名称对应这不同的物理寄存器。
堆栈指针R13(SP:Stack Pointer)
程序进入异常模式时,可以将需要保护的寄存器数据放入R13中。当程序从异常模式返回时,则从对应的堆栈中恢复数据。
链接寄存器R14(LR:Link Register)
- 存储当前子程序的返回地址
- 当异常或中断发生时,被设置为要返回的地址
程序计数器R15(PC:Programm Counter)
指向下一条要读取指令的地址
当前程序状态寄存器(CPSR:Current Programm Status Register)
用来存储当前程序状态寄存器的内容:条件标志位、中断禁止位、当前处理器模式和其他状态和控制信息。
条件标志位
模式标志位
posted on 2019-04-13 16:05 foggia2004 阅读(353) 评论(0) 编辑 收藏 举报