Assembly 为什么不能使用;“跳转和链接”;及;跳转寄存器;对于递归?

Assembly 为什么不能使用;“跳转和链接”;及;跳转寄存器;对于递归?,assembly,Assembly,希望这是我提问的正确地方。为什么不可能使用这两个说明来 递归调用子程序 提前谢谢 如果您“跳转并链接”,则返回地址存储在寄存器中。如果您再次“跳转并链接”,则返回地址将被新地址覆盖,从而破坏原始返回地址并阻止呼叫者返回 您可以在递归函数(或任何调用其他函数的函数)中使用“跳转和链接”,但是您必须手动将链接寄存器的内容保存到堆栈中。它在哪里说的?我们使用这个通用或特定的指令集?请用硬件标记来标记它。@DavidHoelzer Hehe,他确实添加了这个标记。哦,你应该把你所指的架构标记为“跳转和链

希望这是我提问的正确地方。为什么不可能使用这两个说明来 递归调用子程序


提前谢谢

如果您“跳转并链接”,则返回地址存储在寄存器中。如果您再次“跳转并链接”,则返回地址将被新地址覆盖,从而破坏原始返回地址并阻止呼叫者返回


您可以在递归函数(或任何调用其他函数的函数)中使用“跳转和链接”,但是您必须手动将链接寄存器的内容保存到堆栈中。

它在哪里说的?我们使用这个通用或特定的指令集?请用硬件标记来标记它。@DavidHoelzer Hehe,他确实添加了这个标记。哦,你应该把你所指的架构标记为“跳转和链接”,在不同的架构上可能有不同的含义。。。添加一个标记以指示您询问的硬件。。。不是标签
硬件