arm子程序返回问题

[复制链接]
2268|2
 楼主| happy_mcu 发表于 2007-6-16 15:15 | 显示全部楼层 |阅读模式
ARM, AD, pc, ov
在如下程序中,我先在read中调用loop,在loop中又调用delay,最后我还能返回到read中吗?如果不能我改怎样做才可以?望各位高手指点一下!!
read
     .
     .
     .
     bl loop
     .
     .
     .
;**********************************

loop
     .
     .
     .
     bl dely    
     mov pc,lr
;**********************************

delay
     .
     .
     .     
    mov pc,lr


mybao 发表于 2007-6-16 22:01 | 显示全部楼层

先把lr里面的值减一,再跳转

ayb_ice 发表于 2007-6-17 08:00 | 显示全部楼层

嵌套调用不是这样的,只有一个LR,会被覆盖。。。

要将LR入栈保存,返回时出栈再送PC中返回。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

28

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部