希望这是适合我提问的地方。为什么不能使用这两个指令递归调用子例程?
提前感谢!
发布于 2017-05-24 19:19:53
如果您“跳转并链接”,返回地址将存储在寄存器中。如果您再次“跳转并链接”,返回地址将被一个新的地址覆盖,从而破坏原来的返回地址,并阻止调用方返回。
您可以在递归函数(或调用其他函数的任何函数)中使用“跳转和链接”,但是必须手动将链接寄存器的内容保存到堆栈中。
https://stackoverflow.com/questions/44166732
相似问题