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.
我读过当地址中的相对跳转小于 124时,将使用短跳转,否则应使用长跳转。
x86 上两种类型的跳转在CPU 中执行的操作/性能方面有什么区别?
实际上有三种类型的JMP指令;短,近和远(长)。
JMP
短是您所指JMP的亲戚。JMP它被编码为两个字节;相对于当前 IP的实际JMP和字节数 +/-。
近跳转允许您在当前“段”内跳转(使用实模式术语)或在 CS 选择器中当前选定的内存区域内跳转。
long 或 FarJMP还包括一个选择器(或实模式下的段)
你可以自己查一下时间。与时间相关的最大差异是由完成JMP.