2012-09-15 75 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文件到驅動器上的第一個扇區它似乎工作正常。我也使用了上述網站上的教程。