以下のコードは、ユーザーに整数を入力するように要求し、コードは同じ整数のセットをユーザーに返します。x86アセンブリ整数のセットを入力します
include irvine32.inc
.data
input dword ?
prompt1 byte "Input your numbers: ",0
.code
mWriteNum Macro input
push ecx
push eax
mov eax, offset input
call writedec
pop eax
push ecx
endM
mReadInput MACRO input
push ecx
push eax
mov eax, offset input
mov ecx, sizeof input
call Readint
mov input, eax
pop eax
pop ecx
endM
main proc
call clrscr
mov edx, offset prompt1
call writeString
mReadInput input
call crlf
mWriteNum input
exit
main ENDP
end main
しかし、これが結果です:私はここに
Input your numbers: 123
4210688
何をしているのですか?助けてください。ありがとう
あなたの_mWriteNum_マクロは、次の手順で終了します: 'pop eax'' push ecx'。私は最後の 'push ecx'が' pop ecx'を読むべきtypoであることを願っていますか? – Fifoernik