一个简单的问题,但我不知道答案。
原因是什么:
push wParam
pop char
其中wParam
定义为WPARAM类型,char
定义为WPARAM类型。
为什么我不能简单地
mov char, wParam
我觉得它与地址有关,但我无法证明这一点。当我尝试使用mov
语句时,MASM会发出非描述性错误。
答案 0 :(得分:5)
因为两者都是内存地址,所以在x86程序集中没有mov mem,mem
(在这种情况下为mov char,wParam
)这样的指令。
因此,要做到这一点,您需要使用push
& pop
,或先将值移至mov reg,mem
的某个寄存器中,然后将该值移至mov mem,reg
的内存中。