2012-05-30 98 views
1

我想爲CIL編寫我自己的JIT編譯器,我不想使用庫來生成編譯器。你有任何教程,電子書或例子嗎?JIT編譯器 - 如何開始編寫自己的編譯器?

+0

MSDN操作碼在MSDN上有很好的文檔記錄 - 只需閱讀所有這些操作碼,找出將其翻譯成彙編,將其翻譯成另一種可編譯的語言的方法,或者直接解釋它!你將需要編寫一個垃圾收集器。 –

回答

0

這裏雅去,this應該是一個很好的資源。

其中一些是特定於ruby的,但也有很多不是。

+0

其中許多人根本不適用於此,或者僅與此有關。這個問題是關於爲臨時編程語言編寫一個編譯器 - 這意味着解析源代碼,處理優先事項,處理AST,並最終創建一些代碼,最可能的是字節碼甚至是高級語言 - 或許是彙編代碼。一個用於CIL的JIT編譯器會有一個非常簡單的前端,但是會有很多工作編碼機器指令,爲它們管理內存,說服操作系統去執行它,替換已經編譯好的代碼等。 – delnan

+0

像我說的,不是他們都將申請,但會有不少。特別是龍書 - 我沒有自己讀過,但我聽說過很好的事情。 –

+0

,還有其他幾個也會有所幫助 - 編譯器基礎知識,編譯器構建,編譯器設計和構建,編寫一個編譯器?等等所有這些都應該有所幫助 –

0

您可以從Rotor開始。還有一本免費的書,附帶代碼庫。