1, 直接寻址
这是最简单的一种寻址方式-该指令的操作数中包含一个具体的地址。
例如:
MOV DWORD PTR [00513450], ECX
MOV AX, WORD PTR [00510A25]
MOV AL, BYTE PTR [00402811]
CALL 452200
JMP 421000
不需要进行任何有关地址解析的计算,地址的值是纯数字。
2, 间接寻址
MOV DWORD PTR[EAX], ECX
CALL EAX
JMP [EBX + 4]
要想在指令执行之前看到真实地址,需要在该指令上下断点,断下来以后查看寄存器的值或者查看解释窗口中的提示信息。
许多程序使用间接寻址来完成一些复杂的操作,因此刚开始分析调试的时候真实地址并不会显示出来。直到我们执行到这条指令的时候,查看相应寄存器的值才能够直到真实的地址。
网友评论