您的位置 首页 IC

arm汇编adrl以及ldr与adr的差异

看《嵌入式linux应用开发》第六章实例中看到个句:adrlr2,men_cfg_val最初对adr1相当不解,后来发现,那个不是数字1,而是字母l(认真看…

看《嵌入式linux使用开发》第六章实例中看到个句:

adrl r2,men_cfg_val

开始对adr1适当不解,后来发现,那个不是数字1,而是字母l(仔细看头部,有点差异的)

这儿记录下ADRL的用法:

功用:将相关于程序或相关于寄存器的地址载入寄存器中。与ADR指令类似。ADRL生成两个数据处理指令,因而它比ADR加载的地址规模要宽。

语法
ADRL{cond} Rd,label

其间:

cond:是一个可选的条件代码。Rd:是要加载的寄存器。label:是相关于程序或寄存器的表达式。
上面给出的规模是相关于坐落当时指令地址后的、间隔当时指令四个字节(在 Thumb 代码中)或两个字(在 ARM 代码中)远的点而言的。假如对齐为 16 字节,或与此点的相关性更高,则长途地址的规模可更大。

检查ADRL的一起,看到篇推荐ldr与adr的差异的博文,感觉写的很好,摘抄下来。

http://coon.blogbus.com/logs/2738861.html

看此文最大的收成不在于说懂了这几个指令的用法,要害却在于反汇编的运用,有反汇编看出不同用法的详细不同。

注:反汇编用arm—linux_objdump就可以完成了。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/264048.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部