我对MASM很新,并且我尝试使用宏完成练习,但是,每次尝试将参数传递给宏时,都会收到错误error A2032: invalid use of register
。据我所知,我正确地使用了宏。这是配置问题吗?我的代码中似乎导致问题的部分的要点如下。宏在一个单独的过程中调用,参数在堆栈上传递给它。
mDoThing MACRO temp
push edx
push ecx
mov edx,offset stringToWrite
call WriteString
mov edx,offset temp
mov ecx,MAXSIZE
call ReadString
pop ecx
pop edx
ENDM
.code
main PROC
push offset arrayToFill
push offset strBuffer
call ReadVal
main ENDP
ReadVal PROC
push ebp
mov ebp,esp
mov edx,[ebp+8] ; strBuffer
mDoThing edx ; trying to use macro here
.... etc
ReadVal ENDP