Кроме генерации .com файла напрямую можно делать исполняемый DOS-файл поэтапно. Рассмотрим исходный код:

use16 bits 16 section .text ..start: mov ax,0x4c00 int 0x21

Он не выполняет ничего полезного, но будет служить нам каркасом.

Компиляция:

nasm test.s -o test.obj -f as86

Линковка:

ld86 test.obj -o test.exe