【发布时间】:2017-11-14 10:26:07
【问题描述】:
我正在查看以下代码:
cmp edx edx
jle loc_40234
call some_func
add eax, eax
我想了解的是,我什至如何才能到达第四行,因为它不是 loc(不能跳转到)并且它紧跟在函数调用之后。我的意思是,这个调用就像一个跳跃,对吧?
编辑:好的,我了解基本思想。我应该指定:这段代码是 some_func 的一部分(这是我收集的一个循环)。
【问题讨论】:
-
如果
some_func中的代码执行call some_func,则形成称为“递归”的逻辑模式。 CPU 不关心任何方式,不知道 func/procedure 概念,它只是按照指示跳转指令,如果递归太深,堆栈将从存储的返回地址溢出(每个 @ 再加一个987654324@). -
好的,再次感谢!