我有一个简单的程序,它添加 1+1 直到达到一百万,然后打印“完成!” 到控制台。但是当它运行时,它什么也不做。这是代码:
.386
.model flat, stdcall
option casemap :none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\masm32.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib
.data
main dd 0
msg db "Done!", 0
.code
start:
_loop: mov eax, 1
mov main, eax
cmp main, 1000000
jz _next
jmp _loop
_next: invoke StdOut, addr msg
invoke ExitProcess, 0
end start
当我运行它时它什么也没做。我不明白为什么。我目前通过 cmd 运行它,通过单击并将其拖动到提示符并按 Enter 键。此外,MASM32 是最容易学习的汇编程序,还是有更好更容易的汇编程序?如果是这样,有人可以发布更好的吗?谢谢。我只需要某个地方开始学习 x86 汇编。
提前致谢,
程序