KEIL调试运行到调用子程序的指令后,没有跳到子程序里?

2019-07-15 15:57发布

我在用KEIL调试汇编语言时遇到一个问题,在用单步调试运行到调用子程序的指令后,没有跳到子程序里,这样导致了我无法看到子程序内各条指令的执行情况。那位大侠知道怎么解决,望不吝赐教。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
1522495332
1楼-- · 2019-07-15 17:46
Keil单步调试有3种:Step(F11)、Step Over(F10)、Step Out(Ctrl+F11)。Step是真正的单步,遇到函数调用会进入函数内部执行。Step Over是执行一条语句,如果这条语句是个函数调用,则整个被调用的函数全部执行完,效果相当于在下一条语句前设置断点。StepOut是从一个函数中跳出,效果相当于全速运行,遇到“return”等函数指令后停止,如果一直没遇到就会一直运行。
如果你用Step Over,就会出现你说的情况。请使用Step单步调试。如果不是这个原因,可以把代码或者工程贴出来,看看是你软件的问题还是代码的问题 最佳答案
mrtls
2楼-- · 2019-07-15 23:22
可能是子程序条件不成立,可以查看寄存器是否符合条件;也可能是单步默认调试模式直接把子程序执行完并返回原点,设置中断点可以解决,或者试下F10、F11单步总有一个行
小工兵
3楼-- · 2019-07-16 03:56
 精彩回答 2  元偷偷看……

一周热门 更多>