2012-09-15 64 views

回答

1

我不知道GCC中的某个工具是否可以编译汇编程序(如果是,它是否可以编译为16位代码),但是您提到的站点建议使用NASM。你用NASM试过了吗?

+0

是的,我没有看到,现在我不知道如何使用它。 – user1314075

+0

我从来没有用过nasm。但man nasm告诉我,它只是根据输入(汇编程序)文件生成一个目标文件。语法看起来是“nasm -o objectfile assemblerfile.asm。包含你的第一行的文件([BITS 16])不会产生错误,所以它应该是你正在寻找的东西。 –

+0

我试着把nasm和”nothing引导装载程序“从你的链接。它的工作原理。”nasm nothing.asm“创建一个目标文件”nothing“当我运行”文件没有“,我的操作系统报告”没有:x86引导扇区,代码偏移量0x0“。是你需要的,我现在可以把它写到软盘上并从中启动(虽然它什么也不做,显然)。 –

0

我只是评论了这条线,它在FASM中工作。看起来FASM自动默认为16位。编译完成后,它会以相同的名称生成一个BIN文件。我将它重命名为IMG扩展,然后使用VirtualBox将其分配为软盘映像以对其进行测试。工作很好,开机。

只要你写这个BIN/IMG文件到驱动器上的第一个扇区它似乎工作正常。我也使用了上述网站上的教程。