【发布时间】:2020-09-11 02:39:16
【问题描述】:
我在汇编中编写了一些代码,并将 .asm 文件放在 NASM 文件夹中
执行了以下命令:
nasm -f elf test.asm 和 ld test.o -o test 在 nasm 控制台中
但是当我尝试使用 ./test 来运行代码时,
我收到了错误'.' is not recognized as an internal or external command, operable program or batch file.
我为弄清楚如何运行汇编代码而访问的所有网站都说我应该只做 ./thingy.asm 但这显然不起作用,所以我不知道该怎么做!
如果它有助于我的操作系统是 Windows 10,我的 NASM 版本是 2.15.05
【问题讨论】:
-
对此可能有一个非常简单的解释,但我自己有点太愚蠢了/:
-
Windows 程序具有 EXE 扩展名,您不能通过放置
./从本地目录运行它们。./适用于类 Unix 系统。 -
那么我的程序编译后如何运行呢?
-
assemble* 不编译
-
好吧,您没有向您的程序显示代码。我希望它使用 Windows 调用约定。如果它是一个 Windows 程序,您必须使用链接器 (ld) 输出一个名为
test.exe的文件,而不是一个名为test的文件。然后,您可以通过在命令行上键入test.exe来运行它。如果你展示了你的程序,我会告诉你你所拥有的是否真的有效。由于您使用的是elf,因此我担心您正在创建什么样的程序