如果有人可以向我解释一下jmp指令中的“:”有什么用,我真的很感激,下面是来自wiki的wiki
JMP 0x89AB, I know that this one is to jump to that position
JMP 0xACDC:0x5578 what is that?
答案 0 :(得分:1)
没有引用wiki,我只能猜测,但我担心这与8088/86/286/386处理器有关,它们具有“分段”地址空间。
答案 1 :(得分:1)
基于x86的处理器工作为segmented memory architecture。
基本上使用两部分来解决内存问题。段地址和偏移地址。 ':'前面的部分是段地址,':'后面的部分是偏移地址。
答案 2 :(得分:1)
0x1234:0x5678样式地址是分段地址。它的全部意思是0x1234 * 0x10 + 0x5678
。您提供的示例为0xB2338
。
答案 3 :(得分:1)
这是一个很大的跳跃。它的意义在真实模式和保护模式之间有所不同:
segment * 16 + offset
。offset
。offset
,并执行相应的操作(例如:任务切换)。答案 4 :(得分:0)
我猜0xACDC是代码段地址,0x5578是代码中的偏移量。