导读
- ARM是一款RISC处理器,集成了以下典型的RISC架构的特性:
- 数量很多的通用寄存器
- 使用load/store的体系结构操作寄存器中数据,而不直接操作内存中的数据
- 简单的寻址模式,所有的load/store地址都由寄存器内容和指令格式决定
- 采用统一固定长度的指令格式来简化指令的译码
- ARM体系结构还提供一些独特的特性:
- 在绝大多数数据处理指令中包含算术逻辑和移位逻辑,最大化的高效利用ALU和移位器
- 使用自增和自减的地址模式来优化程序循环处理
- load/store指令可以批量传输数据,从而提高数据传输的效率
- 几乎所有的指令都可以条件执行,从而提高指令执行效率
处理器模式
处理器模式 | 缩写 | 模式编码 | 描述 |
---|---|---|---|
User | Usr | 0b10000 | 普通的程序执行模式 |
FIQ | Fiq | 0b10001 | 支持快速的数据搬移或通道处理 |
IRQ | Irq | 0b10010 | 用于通用的中断处理 |
Supervisor | Svc | 0b10011 | 用于操作系统的保护模式 |
Abort | Abt | 0b10111 | 虚拟存储或存储保护 |
Undefined | Und | 0b11011 | 支持硬件协处理器的软件仿真 |
System | Sys | 0b11111 | 运行享有特权的操作系统任务 |
异常类型 | 模式 |
---|---|
复位异常 | Supervisor |
指令未定义异常 | Undefined |
软中断 | Supervisor |
指令预取异常 | Abort |
数据访问异常 | Abort |
保留 | Reserved |
中断 | IRQ |
快中断 | FIQ |