关于寄存器的概述。
带 三角形的是 这种模式下 独有的寄存器,也就是说,FIQ模式下与 SYstem/user 模式下,虽然都有r8 寄存器,但是不是一个东西。
r13 (SP ) 这是堆栈指针,
r15(PC ) 这是 code 的指针。
r14(LR ), 这个是比较重要的,主要用于 跳转, 在执行bl 的指令时,会自动的 将下一条指令存放到R14 中,这样,返回时, 直接 ,将LR的值给到PC就可以了。
cpsr :当前程序状态寄存器。
spsr : 备份的程序状态寄存器,当切换状态时,会自动把 cpsr 中的值,保存到spsr .
关于CPSR 的内容。
需要知道的是 最后的状态位。代表的是当前的程序在什么模式下。
T代表的是 thumb 态,还是arm 态。
I,F 分别代表是否 禁止 FIR, IRQ , 这个会用到。
最前面的 NZCV 为 条件位, 这个也是会用到的。