我在 Youtube 视频教程中获得了以下汇编程序源代码:
.386
.model flat, stdcall
option casemap:none
include c:\masm32\include\windows.inc
include c:\masm32\include\masm32.inc
include c:\masm32\include\kernel32.inc
includelib c:\masm32\lib\masm32.lib
includelib c:\masm32\lib\kernel32.lib
.data
message1 db "Type your name: ", 0
message2 db "Your name is ", 0
.data?
buffer db 100 dup(?)
.code
start:
invoke StdOut, addr message1
invoke StdIn, addr buffer, 100
invoke StdOut, addr message2
invoke StdOut, addr buffer
invoke StdIn, addr buffer, 100
invoke ExitProcess, 0
end start
我用一个bat文件编译程序
ml /c /coff %1.asm
Link /SUBSYSTEM:WINDOWS %1.OBJ
我调用 bat 文件 assemble.bat 所以我调用 assemble source 并汇编可执行文件。
问题是当我运行程序时(程序组装良好,没有错误),程序什么也不做。我在控制台提示符下调用它,它什么也不做,程序只显示一个空白行并返回命令提示符,好像什么也没发生一样。
在视频教程中,这个人组装了他的程序并编译并运行良好,但对我来说什么也没发生。