我目前只有一个汇编文件,汇集了nasm main.asm -f bin -o main.bin
并使用VMware启动。我还写了一些非常基本的字符串处理,它工作正常,但我想将它移到一个单独的文件中。
mov si, message
call io.write
message db "Hello World\r\n===================\0"
io.write:
[...]
所以我将io.write
放在第二个文件中,但我不知道下一步该做什么。根据我收集的内容,我需要将global io.write
放在第二个文件中,并将extern io.write
放在第一个文件中。我也可能完全错了。我还认为我需要使用链接器来实现这一点,但我很难理解它们是如何工作的。
我已经四处寻找,但可能我没有使用正确的搜索字词。任何指针都表示赞赏。我想保持简单,暂时不使用makefile,如果可能的话。
答案 0 :(得分:1)
不幸的是,我不认为将16位代码链接在一起会有很多好运,因为它使用了分段内存模型。另一种方法是将所有其他.asm
文件包含在一个“主”.asm
文件中,然后组装该“主”文件。