跳轉到內容

如何編寫編譯器/編譯流水線

來自華夏公益教科書,開放的書籍,開放的世界

接受原始檔,分析它並生成目標檔案的任務可以粗略地分為若干個獨立的步驟。這些步驟被組織成一個流水線,每個步驟都在上一步的輸出上工作,並生成下一個步驟的輸入。這被稱為編譯流水線,在每個編譯器中都以某種形式存在。

對於接受高階語言並生成低階語言程式碼的通用編譯器,編譯流水線的步驟將是

  1. 掃描
  2. 解析
  3. 語義分析
  4. 生成中間語言
  5. 程式碼最佳化
  6. 生成目標語言

根據語言的要求,編譯器在每個步驟中可能做更多或更少的工作,也可能完全跳過某些步驟。

華夏公益教科書