我理解那些直接值、寄存器或地址都是抵消的近距跳跃。应该有远(绝对地址)跳转与即时值,注册,或地址太过正确吗?远指令列出了m16:16,m16:32和m16:64,但这意味着什么呢?这是在英特尔x64手册第853页。
发布于 2015-04-11 18:22:57
“远==绝对”不是这种情况;虽然所有远跳都是绝对的,但并非所有绝对跳都很远(参见FF /4,调用接近绝对,可选间接)。
跳远是一个绝对跳转,它也写到cs,m16部分进入cs,另一部分是跳转到的地址。跳远的精确语义相当复杂。
因此,可能的跳跃是:
near | far
-----------------------
relative | yes | no
absolute | yes | yes
indirect | yes | yeshttps://stackoverflow.com/questions/29574080
复制相似问题