0

出于学术目的,我正在使用 Windows XP(32 位)学习 NASM 和 DEBUG。我正在努力让我的第一个简单HelloWorld程序工作。它被称为prog1.asm

这是我的prog1.asm文件的代码:

     bits 16
         org 0x100      ; Start program at offset 100h
         jmp main       ; Jump to main program
message:     db 'Hello world',0ah, 0dh,'$'
main:    mov dx,message ; Start address of message
         mov ah,09      ; Prepare for screen display
         int 21h        ; DOS interrupt 21h
         int 20h        ; Terminate program

上面的这段代码是从我一直在学习的书中写出来的,你可能知道我对此很陌生。我nasm.exe在我正在使用的目录中。

当我在我的目录中时,我nasm -f prog1.asm -o progm1.com -l prog1.lst试图使用该prog1.asm文件来创建由 NASM 创建的可执行文件和也由 NASM 生成prog1.com的输出列表文件。prog1.lst

运行此命令会给我以下错误:

nasm: fatal: unrecognized output format 'prog1.asm' - use -hf for a list
type 'nasm -h'for help

如果有人熟悉此问题并可以提供帮助,将不胜感激,如果需要更多详细信息,请告诉我。

4

1 回答 1

1

-f选项选择输出格式。试试这个:

nasm prog1.asm -f bin -o progm1.com -l prog1.lst
于 2015-08-04T09:32:22.797 回答