2013-12-18 201 views
-6

我一直在考慮構建自己的編譯器一段時間,前幾天我終於開始編譯。我的編譯器像這樣工作:構建編譯器步驟

  • 從我自己的文件解析代碼。 (用C++由.EXE文件)
  • 創建彙編代碼
  • 創建包含這些組件代碼
  • 編譯組件文件,如果它是由一個文件(帶有vbs腳本完成)
  • 鏈接的。 OBJ文件
  • ,我們有我們的.exe文件

現在我有找到解析我的代碼的最佳途徑的困難。我還沒有真正做到這一點,但我會把我的想法放在這裏。

  • 查找所有變量並聲明它們。變量將以'var'開頭(現在)。未初始化的變量將被放入.data?部分和初始化的.data部分。
  • 找到主程序並開始執行功能和操作。

現在我只是想知道如果有人能改善我的想法。或者如果有人有更好的想法來製作某種編譯器和自己的編程語言。

+0

這對Stack Overflow來說是一個廣泛的問題。編寫一個編譯器的好書 - 有幾個。 –

+1

對於SO問題,這個問題太大了。要正確回答您的問題需要一本好書和/或一學期的課程。我參加了這個在線課程,認爲它非常出色:https://www.coursera.org/course/compilers(是的,你在該課堂中編譯一個編譯器,面向對象的語言不會少,我的函數100%甚至有一些很好的優化。) –

+0

StackOverflow不是一個探空板。編譯器是廣泛和複雜的主題,當你有特定的問題時,請回過頭來問。 – crashmstr

回答