0

就像我说的:

这些代码:

mov     EBX, 0
mov     EBX, ofn.nFileOffset   
add     EAX, EBX                ;; error

得到错误:指令操作数的大小必须相同。

但是当我编辑时:

mov     EBX, 0
mov     BX, ofn.nFileOffset   
add     EAX, EBX   

没关系。我还测试了 Ollydbg 以跟踪寄存器,但我没有看到任何不同。

任何人都可以解释

4

2 回答 2

1

ofn.nFileOffset 为 2 个字节。

和 mov 指令需要相同大小的 2 个参数。

于 2013-11-04T01:26:32.503 回答
0

你应该试试:

xor     EBX, EBX
mov     BX, ofn.nFileOffset   
add     EAX, EBX

现在你将拥有ofn.nFileOffset价值EBX

于 2013-10-10T12:54:14.387 回答