我已经读过,当地址中的相对跳跃小于124时,将使用短跳跃,否则应该使用长跳跃。
在x86上的两种类型的跳转之间,在CPU /性能中执行操作的区别是什么?
答案 0 :(得分:10)
实际上有三种JMP
指令;短,近,远(长)。
短JMP
是您所指的相对JMP
。它被编码为两个字节;相对于当前IP的实际JMP
和字节数+/-。
近距离跳跃允许您跳过当前"段" (使用实模式术语)或CS选择器中当前选定的存储区域内。
long或JMP
还包括选择器(或实模式中的段)
您可以自己查看时间。与时间相关的最大差异是由于必须读取以完成JMP
的不同字节数所致。