THUMB指令集

THUMB指令集humb 指令集可以看作是 ARM 指令压缩形式的子集 它是为减小代码量而提出 具有 16bit 的代码密度

大家好,欢迎来到IT知识分享网。

humb指令集可以看作是ARM指令压缩形式的子集,它是为减小代码量而提出,具有16bit的代码密度。Thumb指令体系并不完整,只支持通用功能,必要时仍需要使用ARM指令,如进入异常时。其指令的格式与使用方式与ARM指令集类似,而且使用并不频繁,Thumb指令集作一般了解。

在编写Thumb指令时,先要使用伪指令CODE16声明,编写ARM指令时,则可使用CODE32伪指令声明。

1、Thumb指令集没有协处理器指令、信号量指令、以及访问CPSR或SPSR的指令,没有乘加指令及64位乘法指令等,且指令的第二操作数受到限制;

2、大多数的Thumb数据处理指令采用2地址格式;

3、除了跳转指令B有条件执行功能之外,其他指令均为无条件执行,而且分支指令的跳转范围有更多限制;

4、数据处理指令是对通用寄存器进行操作,在大多数情况下,操作的结果放入其中一个操作数寄存器中,而不是放入第3个寄存器中;访问寄存器R8~R15受到一定的限制,除MOV、ADD指令访问R8~R15外,其他数据处理指令总是更新CPSR中ALU状态标志,访问寄存器R8~R15的Thumb数据处理指令不能更新CPSR中的ALU状态指示。

5、Thumb状态下,单寄存器加载和存储指令只能访问寄存器R0~R7;

6、LDM、STM指令可以将任何范围为R0~R7的寄存器子集加载或存储;

7、PUSH、POP指令使用栈寄存器R13作为基址堆栈操作。

8、The Thumb instruction set format:

















转载于:https://www.cnblogs.com/Mr-Shadow/archive/2013/03/09/2951532.html

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/120856.html

(0)
上一篇 2025-10-27 08:15
下一篇 2025-10-27 08:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信