我一直在學習編譯器理論和程序集,並設法創建一個生成x86彙編代碼的編譯器。如何編譯Java或C++應用程序生成的代碼
我怎樣才能把這個彙編代碼變成一個.exe?是否有一些神奇的API或工具需要與之交互?或者比我想象的更簡單?
我不太確定.exe中有什麼,或者彙編代碼和.exe本身之間有多少抽象。
我的'編譯器'是用Java編寫的,但我想知道如何在C++中執行此操作。
請注意,如果我將生成的程序集編譯爲.exe就好了,例如使用vC++。
編輯:更確切地說,我已經知道如何使用編譯器編譯彙編代碼。我想要的是讓我的程序基本上輸出一個.exe。
謝謝。在窗戶上怎麼樣? – Cam 2010-06-19 16:11:11
對不起,我一定錯過了關於Windows的一點。它應該幾乎相同,有CreateProcess()函數,並且彙編程序和鏈接程序可執行文件作爲VS發行版的一部分進行安裝(al.exe和link.exe)我建議您參閱CreateProcess的MSDN文檔()以及。 – iksemyonov 2010-06-19 16:25:56
很酷,謝謝。我其實並沒有在我的問題中提到過窗口 - 可能應該有:) – Cam 2010-06-19 16:34:02