凡亿教育-乐乐
凡事用心,一起进步
打开APP
公司名片
凡亿课堂 | 面试指南
当前位置: 首页 面试指南
ARM指令集分为⼏类?
浏览量:993
2023-11-21 11:22:30

ARM指令集分为⼏类?

2类,分别为Thumb指令集,ARM指令集。ARM指令⻓度为32位,Thumb指令⻓度为16位。这种特点使得ARM

既能执⾏16位指令,⼜能执⾏32位指令,从⽽增强了ARM内核的功能。

通⽤寄存器包括R0〜R15,可以分为具体哪三类?


通⽤寄存器包括R0-R15,可以分为3类:

1. 未分组寄存器R0-R7

在所有运⾏模式下,未分组寄存器都指向同⼀个物理寄存器,他们未被系统⽤作特殊的⽤途。因此在中 断或异常处理进⾏异常模式转换时,由于不同的处理器运⾏模式均使⽤相同的物理寄存器,所以可能造 成寄存器中数据的破坏。

2. 分组寄存器R8-R14

对于分组寄存器,他们每次所访问的物理寄存器都与当前的处理器运⾏模式相关。

R13常⽤作存放堆栈指针,⽤户也可以使⽤其他寄存器存放堆栈指针,但在Thumb指令集下,某些指令 强制要求使⽤R13存放堆栈指针。

R14称为链接寄存器(LR,Link Register),当执⾏⼦程序时,R14可得到R15(PC)的备份,执⾏完⼦ 程序后,⼜将R14的值复制回PC,即使⽤R14保存返回地址。


3. 程序计数器PC(R15)

寄存器R15⽤作程序计数器(PC),在ARM状态下,位[1:0]为0,位[31:2]⽤于保存PC;在Thumb状态下,

位[0]为0,位[31:1]⽤于保存PC。

image.png


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。仅供学习交流使用,不构成商业目的。版权归原作者所有,如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时删除。 侵权投诉

相关文章

const有什么作⽤?

2023-12-14 16:19:42

为什么会采⽤三次握⼿,若采⽤⼆次握⼿可以吗?

2024-01-30 15:48:54

Linux指的是什么,有什么区别?

2024-10-16 16:44:13

试说明嵌入式操作系统与通用的计算机系统的区别?

2024-03-27 11:18:54

RTOS实时操作系统中强调的实时是什么概念?

2024-03-27 11:20:23