打印

使用axd模拟仿真遇到的问题

[复制链接]
1474|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangdecai|  楼主 | 2008-4-19 15:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在但不执行汇编指令的时候,axd显示的pc指针指向对当前执行的指令,而不是指向下两条指令,这是怎么回事?
我在汇编中写的一个函数,使用ARM指令,在c中被调用,c用thumb编译,我发现
使用mov pc,lr返回和bx lr返回不一样,mov pc,lr不正常,在axd中看r14的值应该是下一条指令的地址,但不对,使用bx lr则正常。哪个高人帮我解释一下。谢谢!

enable_fiq                                    ;open fiq

   STMDB    SP!,{R1}
   MRS      R1,CPSR
   BIC        r1,r1,#F_Bit
   MSR        cpsr_c,r1        
   LDMIA    SP!,{R1}
   MOV      pc,lr                           ; Return to caller
;   BX        lr     
disable_fiq                
                                            ; close fiq
   STMDB    SP!,{R1}
   MRS      R1,CPSR
   ORR        r1,r1,#F_Bit
   MSR        cpsr_c,r1        
   LDMIA    SP!,{R1}
   MOV      pc,lr                           ; Return to caller
;   BX lr    

相关帖子

沙发
阿南| | 2008-4-19 17:22 | 只看该作者

在AXD中观察到的,pc本来就指向即将执行的指令

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

5

帖子

0

粉丝