“ARM指令下如何按字对齐执行指令”

“ARM指令下如何按字对齐执行指令”,第1张

纯arm指令是按4字节对齐,arm为节省空间也包含thumb指令,后者按2字运者节对齐。

如果想保证指令全部郑唯为四字节对旁丛薯齐,需要在编译时强制编译arm

mk中编译选项为LOCAL_ARM_MODE := arm

你这个是ARM7 CPU的指令码格式,早期的ARM架构,是ARMV4T,而且只是其数据处理类指令的指令编码格式(4位编码,配合这其余位,如I位,Rn,Rm,第二 *** 作数等编码位,可以编码出很多条数据处理指令。)。所以说,并不是25-27位激或喊没有使用。在其它类型的指令中就有使用25-27,如图明野2.

 团州                                       图1 ARM7 CPU数据处理指令的编码格式。

                           图2 ARM7 CPU的单字节传输(LAD,STR)指令编码格式

具体请自己查找官方手册,在arm官网可以找到对应资料。

ARM 体系结构参考手册ARMv7-A和ARMv7-R版:DDI0406C_C_arm_architecture_reference_manual.pdf  的A5章节,193页起都是讲这个的。

ARM 架构的指令长度是固定的,在 arm 状态下是 32 bits 的,在 thumb 状态下是 16 bits的。

如神败果你想通过程序计算的话,可以先考虑保存当前PC的值,然后在下一条指令中用新的 PC

值去减去你所保存下来的前一PC值,即可得出指令的长度。

////////////////////////////////困瞎差///////////////////////////////////////////////////汪皮/////////////////////////////////////////////////////

就专业程度和实在程度而言,杭州巨立安(JulianTec)

是您在arm架构下学习嵌入式Linux研发的上佳指导!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12408525.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存