assembly DOSBox -此程序不能在DOS模式下运行(汇编)

lg40wkob  于 2023-10-19  发布在  其他
关注(0)|答案(3)|浏览(106)

几个星期以来,我一直在学习汇编语言编程,今天我安装了所有必要的应用程序来编译汇编程序。
我安装了DOSBox 0.74、NASM(汇编程序)和AFD(汇编程序)。我安装驱动器并正确地看到我的.asm文件。但是当我执行以下命令时:
nasm firstprogram.asm -o firstprogram.com
它给了我以下错误:This program cannot be run in dos mode
但是当我通过命令提示符(cmd)编译文件时,它会正确编译,然后我必须转到DOSBox运行AFD并调试.com文件。
你知道为什么我在DOSBox上得到这个错误吗?

ctrmrzij

ctrmrzij1#

您收到此错误消息是因为您试图在虚拟 MS-DOS 平台上运行 *Windows版本的nasm二进制文件 *。这不受支持。您应该下载并使用MS-DOS nasm binary

说明:当你看到可移植可执行格式(.exe、.dll和一些.com文件的内部格式)的细节时,你会遇到 *MS-DOS存根头 *。此标题的主要功能是在MS-DOS等16位real mode操作系统上执行时显示消息“This program cannot be run in DOS mode”。此消息是对用户的一个警告,提醒他们正在尝试运行的程序与当前系统不兼容。

yxyvkwin

yxyvkwin2#

您下载的是在Windows中运行的版本。当你打开一个特定版本的目录时,会有不同操作系统的子目录。
例如,这里:https://www.nasm.us/pub/nasm/releasebuilds/2.12/
如果你从/dos文件夹下载一个,你将能够在DOSBox中运行它,但是如果你下载一个在/win32文件夹,你将只能从Windows中运行它。

tzxcd3kk

tzxcd3kk3#

也许你正在做所谓的console application。它在控制台上运行,但需要Windows 95或从不在引擎盖下运行,主要是为了支持fat32

相关问题