2010-11-19 64 views
2

我想學習
1)。如何調用匯編代碼,以便我可以從C++調用它? 2)。我想將所有彙編代碼保存在不同的文件中。在C++中調用匯編程序

我正在使用Linux,GCC和其他GNU開發者工具。

您能否提供一些很好的參考資料?

回答

4

寫C++頭文件聲明你想要的功能。在另一個文件中用匯編語言定義這些函數。建立彙編語言代碼的目標文件。然後在其他C++代碼文件中,#include包含彙編代碼定義函數聲明的頭文件。以任何C++函數的形式調用函數,在與任何目標文件鏈接時鏈接到目標文件。

有關引用,請閱讀某些使用匯編語言和C/C++混合使用的項目的代碼。設備驅動可以通過這種方式導出函數

+0

沒有外部「C」?!? – smilingthax 2010-11-19 06:20:54

+0

當然沒有外部「C」。你必須在.s文件中自己修改名稱,但是你必須實現ABI的被調用方的所有其餘部分,爲什麼不呢? – zwol 2010-11-19 06:28:16

+0

啊,我明白了...取決於你的需要..如果C鏈接足夠,那麼它可能會更容易... – smilingthax 2010-11-19 06:44:09