CC1 編譯器

CC1 編譯器

簡介

C1 語言

詞彙取得

語法規則

語法剖析

符號表

語意分析

中間碼

組合語言產生

訊息

相關網站

參考文獻

最新修改

簡體版

English

為了說明編譯器是如何設計出來的,我們在開放電腦計畫中設計了一個功能完備但簡化過的 C 語言,這個語言稱為 C1 語言,是 C0 語言的擴充版。

CC1 編譯器是一個 C1 語言的編譯器,具有完成的編譯器功能。在程式設計上,CC1 又被進一步拆解為 1. 詞彙分析 2. 語法分析 3. 語意分析 4. 中間碼產生 5. 組合語言產生 等階段,而這所有的階段,都會存取一個共同的資料結構,那就是符號表。

因此,整個 CC1 編譯器被進一步分解為下列程式模組。

模組 核心物件 程式
詞彙分析 (Lexical Analysis) Scanner Scanner.c, Scanner.h
語法分析 (Syntax Analysis) Parser Parser.c, Parser.h
語意分析 (Semantic Analysis) Semantic Semantic.c, Semantic.h
中間碼產生 (Intermediate Code) PCode PCode.c, PCode.h
組合語言產生 (Code Generation) Generator Generator.c, Generator.h
符號表 (Symbol Table) SymTable SymTable.c, SymTable.h

Facebook

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License