一个简单的问题,但我不知道答案。
原因是什么:
push wParam
pop char
其中wParam
定义为 WPARAM 类型,char
定义为 WPARAM 类型。
为什么我不能简单地
mov char, wParam
我有一种感觉,这与地址有关,但我无法证明它的合理性。当我尝试使用 mov
语句时,MASM 会吐出一个非描述性错误。
因为两者都是内存地址,并且在 x86 汇编中没有像 mov mem,mem
这样的指令(在这种情况下mov char,wParam
(。
因此,要做到这一点,你需要使用 push
& pop
,或者首先将值移动到具有mov reg,mem
的某个寄存器中,然后从该寄存器移动到具有mov mem,reg
的内存中。