➢ 当前处理器的模式决定着哪组寄存器可操作. 任何模式都可以存取: 相应的r0-r12子集 相应的 r13 (the stack pointer, sp) and r14 (the link register, lr) 相应的 r15 ( the program counter, pc) 相应的CPSR(current program status register, cpsr)
User:非特权模式,大部分任务执行在这种模式 • 正常程序执行的模式
FIQ:当一个高优先级(fast)中断产生时将会进入这种模式
异 常
• 高速数据传输和通道处理
模 IRQ:当一个低优先级(normal)中断产生时将会进入这种模式
特
式
• 通常的中断处理
权
Supervisor:当复位或软中断指令执行时将会进入这种模式
User mode r0-r12, r15, and cpsr
r13 (sp) r14 (lr)
User mode r0-r12, r15, and cpsr
r13 (sp) r14 (lr)
cpsr
spsr
spsr
spsr
Note: System模式使用user模式寄存器集
23.11.2020
CUN
CUN
8
模式改变方法
➢ 方法:
软件控制 外部中断或异常处理
➢ 通常在用户模式下
不能访问被保护的系统资源 一般不能改变模式 异常发生可以导致模式改变
23.11.2020
CUN
9
寄存器组织
当前可见寄存器
Abort Mode
r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 (sp) r14 (lr) r15 (pc)