Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我目前正在大学学习 MIPS 汇编,并且正在努力感受这门语言。据我了解,跳转命令允许我在内存中跳得更远,而不是分支命令会给出额外的可用位。那么为什么我会使用无条件分支而不是使用跳转呢?
跳转有更多的立即位,并且是一个绝对地址。分支使用偏移量。一个是位置无关的,例如另一个不是。
MIPS 没有无条件分支。它可能是您的汇编程序提供的伪指令,例如 BEQ R1,R1。分支是可取的,因为它们允许代码位于内存中的任何位置而无需重新定位。希望在没有 MMU 的机器上实现共享库。这篇维基百科文章中的背景资料。