(arm9有37个寄存器,arm7有27个,好像是这样的) 37个寄存器= 7个未分组寄存器(R0~R7)+ 2×(5个分组寄存器R8~R12) +6×2(R13=SP,R14=lr 分组寄存器) + 1(R15=PC) +1(CPSR) + 5(SPSR) 用途和访问权限: R0~R7:USR(用户模式)、fiq(快速中断模式)、irq(中断模式)、svc(超级用法模式)、abt、und R8~R12:R8_usr~R12_usr(usr,irq,svc,abt,und) R8_fiq~R12_fiq(fiq)...
arm处理器模式 用户模式(User):arm处理器正常的程序执行状态 快速中断模式(FIQ):用于高速数据传输或通道处理 外部中断模式(IRQ):用于通用的中断处理 管理模式(Supervisor):操作系统使用的保护模式 数据访问终止模式(Abort):当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护 系统模式(System):运行具有特权的操作系统任务 未定义指令中止模式(Undifined):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿...
学习arm一段时间了,一直没有机会好好总结一下,现在放假了终于有机会理一理思路,总结一下,便于复习记忆。 arm 基础 一、arm寄存器 无论是学习哪一种处理器,首先需要明确的就是这种处理器的寄存器以及工作模式。 arm有37个寄存器,其中31个通用寄存器,6个状态寄存器。1、不分组寄存器(R0-R7) 不分组也就是说说,在所有的处理器模式下指的都时同一物理寄存器。在异常中断造成处理器模式切换时,由于不同的处理器模式...
arm微处理器共有37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可编程访问的,取决微处理器的工作状态及具体的运行模式。但在任何时候,通用寄存器R14~R0、程序计数器PC、一个或两个状态寄存器都是可访问的。 1.arm 状态下的寄存器组织 通用寄存器: 通用寄存器包括R0~R15,可以分为三类: ─ 未分组寄存器R0~R7; ─ 分组寄存器R8~R14 ─ 程序计数器PC(R15) ...
本帖最后由 xiaojsj 于 2013-11-09 14:57 编辑 各位大牛帮忙来解析下: 在进入中断时,arm的cpsr寄存器会保存到相应异常模式的cpsr私有备份寄存器中, 而在进程切换的时候,cpsr寄存器却不需要保存,这是原因呢? 保存cpsr寄存器的标准是什么呢? 叩谢!·
;
; arm
arm7 常用寄存器注释
R13 当前栈指针寄存器
R14 栈函数执行完后返回的函数指针【R14 (Link Register) (LR) 的地址】
pc 程序计数器