学习arm笔记一

arm处理器模式:
用户模式(usr):正常程序执行模式
异常模式 {
快速中断模式(FIQ):支持高速数据传送或通道处理
普通中断模式(IRQ):用于通用中断处理
管理模式(svc supervisor):操作系统保护模式
程序终止模式(abt abort):实现虚拟存储器或存储器保护
未定义模式(undf):支持硬件协处理器的软件仿真
}
系统模式(sys):运行特权操作系统任务

两种工作状态:
1.Thumb状态,2.arm态
37个寄存器:
31个通用寄存器,包括程序计数器(pc),都是32位寄存器
6个状态寄存器,也是32位,目前只是用了12位
学习arm笔记一
R13:堆栈指针寄存器(sp)指向异常模式分配的堆栈
R14:子程序链接寄存器(LR),当接到BL指令时,得到R15的备份,其他时候作为通用寄存器
R15:程序计数器(pc)
R0-R7:真正的通用寄存器,在任何模式下访问都是一样的
CPSR:当前程序状态寄存器(Current Program Status Register)
SPSR:程序状态保存寄存器(Saved Program Status Register),异常模式使用,用于保存CPSR的状态
异常向量表:
学习arm笔记一
学习arm笔记一