我一直在寻找这个答案一个多星期了,但没有运气。到目前为止,我已经了解到堆栈会在函数嵌套或中断发生时保存返回地址,但最近我了解到现代处理器使用链接寄存器来实现相同的目标。经过一些研究,我开始知道堆栈确实被用来保存旧处理器中的返回地址。但是,当旧的实现工作时,为什么现代处理器使用整个单独的寄存器( LR )来保存返回地址对我来说没有意义?LR 相对于基于堆栈的实现有什么好处?
提前致谢!!!
arm processor
为什么我们在 ARM 架构中有一个临时寄存器?处理器如何使用它,我的意思是这个寄存器的目的是什么?
arm abi
arm ×2
abi ×1
processor ×1