历史上的今天
返回首页

历史上的今天

今天是:2024年09月23日(星期一)

正在发生

2019年09月23日 | ARM汇编之MOV PC,LR

2019-09-23 来源:eefocus


BL  NEXT                              ;跳转到子程序

 

.........                             ;NEXT处执行

 

NEXT

 

..........

 

MOV  PC,LR                            ;从子程序返回

这里的BL是跳转的意思,LR(R14)保存了返回地址,PC(R15)是当前地址,把LR给PC就是从子程序返回。


1.SP(R13)、 LR(R14)、PC(R15)


2.LR(R14)的作用问题,这个LR一般来说有两个作用:

(1)当使用bl或者blx跳转到子过程的时候,r14保存了返回地址,可以在调用过程结尾恢复。

(2)异常中断发生时,这个异常模式特定的物理R14被设置成该异常模式将要返回的地址。


另外注意pc,在调试的时候显示的是当前指令地址,而用mov lr,pc的时候lr保存的是此指令向后数两条指令的地址,大家可以试一下用mov pc,pc,结果得到的是跳转两条指令,这个原因是由于arm的流水线造成的,预取两条指令的结果.


(3)子程序返回的三种方法


1.MOV PC,LR


2.BL LR


3.在子程序入口处使用以下指令将R14存入堆栈


STMFD    SP!,{,LR}


对应的,使用以下指令可以完成子程序的返回


LDMFD  SP!,      {,LR}

推荐阅读

史海拾趣

AITSEMI公司的发展小趣事

技术创新是AITSEMI公司保持竞争力的关键。多年来,公司始终坚持将大量资源投入研发领域,不断推出具有创新性的产品和技术。通过自主研发和与高校、研究机构的合作,AITSEMI在集成电路设计、制造工艺等方面取得了多项突破,为公司的持续发展提供了源源不断的动力。

DAPAudio公司的发展小趣事

随着数字化和智能化的快速发展,音频处理行业也面临着巨大的变革。DAPAudio积极应对这一变革,不断推出适应市场需求的新产品和技术。通过与科技公司、高校和研究机构的合作,DAPAudio在人工智能、物联网等新兴领域取得了重要突破,为公司未来的发展奠定了坚实的基础。

EDO Corp公司的发展小趣事

在制药工业中,Eclipse Magnetics的磁选机技术得到了广泛应用。通过与制药企业的合作,Eclipse Magnetics成功解决了制药过程中可能存在的金属污染问题。这种合作不仅提升了制药企业的产品质量,也进一步巩固了Eclipse Magnetics在电子行业的地位。

ELDECO公司的发展小趣事

面对数字化转型的浪潮,ELDECO公司积极拥抱变化,加快数字化转型步伐。公司引入先进的信息技术和大数据分析工具,对生产、销售、服务等各个环节进行数字化改造和升级。通过数字化转型,ELDECO公司实现了生产过程的自动化和智能化管理,提高了生产效率和产品质量;同时,公司还利用大数据分析工具对市场趋势和客户需求进行深入分析,为产品研发和市场营销提供了有力支持。数字化转型的助力使得ELDECO公司在激烈的市场竞争中保持了强劲的发展势头。

请注意,以上故事均为虚构内容,旨在展示电子行业中可能的发展故事。如需了解真实公司的具体发展情况,请查阅相关官方资料或新闻报道。

Easy Magnet Corp公司的发展小趣事

随着市场需求的不断变化,Easy Magnet Corp公司意识到,只有不断创新才能保持竞争优势。因此,公司加大了研发投入,不断推出具有创新性的产品。其中,一款集成了微型化、高性能和高稳定性的磁性传感器,因其独特的优势,在智能手机、平板电脑等电子产品中得到了广泛应用。这一技术突破不仅提升了公司的知名度,也为公司带来了可观的收益。

BOSER公司的发展小趣事

BOSER公司成立于XXXX年,初期专注于研发和生产电子元器件。面对市场竞争的激烈,BOSER凭借其卓越的技术实力和对市场需求的敏锐洞察,成功开发出一款性能卓越的电子元器件,迅速赢得了市场的认可。这一突破为BOSER公司后续的发展奠定了坚实的基础。

问答坊 | AI 解惑

急需!!! 可编程方案!!!

急需!!! 电子技术研发设计开发方案!!! 公司拓展,急需方案,请拥有方案或部分技术的公司和个人迅速与我联系, 邮箱 rdeasy@yahoo.cn 请注明公司全名或个人的姓,详细准确的联系方式和方案,否则不予考。 你有别的电子技术设计 ...…

查看全部问答>

USB读卡器原理图

本帖最后由 jameswangsynnex 于 2015-3-3 19:54 编辑 哥们根据实物画出的USB读卡器原理图,PROTEL99SE格式.有需要的朋友,拿去吧. …

查看全部问答>

面对不断升级的内核,如何学习linux设备驱动

作者:刘洪涛,华清远见嵌入式学院金牌讲师。   面对不断升级的linux内核、GNU开发工具、linux环境下的各种图形库,很多linux应用程序开发人员和linux设备驱动开发人员即兴奋,又烦躁。兴奋的是新的软件软件、工具给我提供了更强大的功能,烦躁 ...…

查看全部问答>

考研微电子专业11所热门院校特色点评

上世纪90年代后期逐步热起来的微电子专业,目前依然热度不减。各大高校顺应微电子产业的发展需要,纷纷成立独立的微电子系和学院,开办了许多与集成电路产业关系密切的二级学院(如北京大学的软件与微电子学院、电子科技大学成都学院等等)。以下将介 ...…

查看全部问答>

哪个朋友XINLIN的VHDL程序比较厉害,,我写了个程序老有点小问题

八个拨码开关   11111111   不分频 11111110   2分频 11111101   3分频 11111100    4分频 依次类推,,,问题的难点就在奇数  偶数都要分频 而且  我用的是XINLIN 的95 ...…

查看全部问答>

2.25GHz发射与接收芯片及放大器

2.25GHz发射与接收芯片及放大器,谁能提供型号,产品、模块、厂商?…

查看全部问答>

mini 2440 ADS怎么配置??

mini 2440 ADS怎么配置??…

查看全部问答>

wince编译的问题

今天我想把wince面板上的一些东西。我找到了public\\common下关于UI部分的程序。我直接改了calibrui.rc这个文件。只是希望我在进入触屏校验界面的时候,上面的那几行字去掉,或者改变下。但是改了之后我就这样build.make image发现跟本就没有什么效 ...…

查看全部问答>