我想知道MOV BYTE PTR指令究竟是如何工作的,我在这里有一个例子,我无法理解结果。检查一下:
MOV CL,BYTE PTR DS:[ESI]
----Ollydbg show this------
DS:[01EA22E0]=41 ('A')
CL=B0
为什么CL = B0?为什么CL不是41?如果我在转储中去ESI,我有这个
01EA22E0: 41 47 00 C5 B9 F1 63 3C... But any B0 ;(
检查我的打印件:
我真的需要解决这个问题,欢迎任何帮助。
答案 0 :(得分:7)
这是因为调试器在该指令处停止,它实际上还没有执行。您将不得不再单步一次看到CL寄存器更新了内存的内容。