华清远见嵌入式-ARM汇编

 

ARM处理器的工作模式:

  • usr(用户模式):非特权模式,ARM处理器正常程序执行模式,大部分任务执行在这种模式
  • fiq(快速中断模式):用于高速数据传输或通道处理
  • irq(外部中断模式):用于通用的中断处理
  • svc(管理模式):操作系统使用的保护模式
  • abt (数据访问终止模式): 当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。
  • sys(系统模式): 运行具有特权的操作系统任务。
  • und(未定义指令中止模式):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。 

 ARM寄存器: Cortex系列处理器有40个32位寄存器,其中包括33个通用寄存器和7个状态寄存器,40个中有18个可编程访问的寄存器

 通用寄存器(R0-R15)可以分为三类:未分组寄存器R0-R7,分组寄存器R8-R14,程序计数器PC(R15)

 R0~R7
      所有工作模式下,R0-R7都分别指向同一个物理寄存器(共8个物理寄存器),它们未被系统用作特殊的用途。

R8~R14

  分组寄存器是指同一个寄存器名。在ARM微处理器内部存在多个独立的物理寄存器,每一个物理寄存器分别与不同的处理器模式相对应。

R15(pc)

 在程序开始执行前,将程序指令序列的起始地址,即程序的第一条指令所在的内存单元地址送入PC,cpu 按照 PC的指示从内存读取第一条指令。当执行指令时,cpu自动修改PC 的内容,即每执行一条指令PC增加一个量,使 PC总是指向正在取指的指令地址

CSPR 存储当前内核的状态和模式标示。

特权模式下,私有的 SPSR (Saved Program Status Register) –当一个异常发生时保存当前的cpsR 值。结合连接寄存器可使处理器返回先前的状态。

基本指令格式:

ARM是三地址指令格式,指令的基本格式为:

 <opcode>{<cond>}{S} <Rd>,<Rn>{,<operand2>}

1、<>内的项是必须的,{}内的项是可选的,cond若不附指令后使用认条件AL(无条件执行)。

2、opcode:指令助记符,如LDR,STR等;

3、cond:执行条件,如EQ,NE等;

4、S:是否影响cpsR寄存器的值;

5、Rd:目标寄存器;

6、Rn:第一个操作数的寄存器;

7、operand2:第二个操作数;

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...