02_ARM汇编自学笔记模型之ARM微处理器的工作状态

二模型

ARM 微处理器的工作状态

- 第一种为ARM状态,此时处理器执行32位的字对齐的ARM指令;

- 第二种为Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令。

状态切换方法:在开始执行代码时,应该处于ARM状态,采用执行BX指令的方法,使微处理器从ARM状态切换到Thumb状态,当处理器处于Thumb状态时发生异常(如I RQ、FI Q、Undef 、Abort 、SWI 等),则异常处理返回时,自动切换到Thumb状态。操作数寄存器的状态位为0时,执行BX指令时可以使微处理器从Thumb状态切换到ARM状态。

ARM体系结构所支持的最大寻址空间为4GB。

02_ARM汇编自学笔记模型之ARM微处理器的工作状态

02_ARM汇编自学笔记模型之ARM微处理器的工作状态

ARM微处理器的指令长度可以是32位(在ARM状态下),也可以为16位(在Thumb状态下)。

ARM微处理器中支持字节(8位)、半字(16位)、字(32位)三种数据类型

其中,字需要4字节对齐(地址的低两位为0)、半字需要2字节对齐(地址的最低位为0)。