section .data
map db 1
section .text
start:
cmp byte [map], 1
je exit
jmp start
exit:
ret
我没有运气读数据。我的意思是我组装成二进制DOS COM格式,当我启动它时就冻结了。有人能告诉我我做错了什么吗?与数据没有运气NASM
section .data
map db 1
section .text
start:
cmp byte [map], 1
je exit
jmp start
exit:
ret
我没有运气读数据。我的意思是我组装成二进制DOS COM格式,当我启动它时就冻结了。有人能告诉我我做错了什么吗?与数据没有运气NASM
DOS com文件预计将被加载到地址0x100。您应该在代码的开始处包含行org 0x100
。
从来不知道!谢谢! – 2014-10-17 21:03:11
@ Gip-Gip,查看PSP(“程序段前缀”),找出原因。简短版本是DOS用程序可能需要的大量信息填充段的第一个0xff字节。 – 2014-10-18 03:56:01
对于初学者来说,当没有什么“ret”发出时,你会发出'ret'。 – 2014-10-17 13:42:46
@DanielKamilKozar,如果内存服务正常,DOS准备好堆栈,使程序结束时的'ret'将控制返回到COMMAND.COM。但是,我没有这个参考资源[Peter Norton的IBM PC程序员指南]。 – 2014-10-17 20:33:34