================更新中==================
1、編譯階段
編譯前端主要包括詞法分析、語法分析、語義分析、中間代碼生成這幾個部分,後端則包含代碼優化和目標代碼生成部分。前端的特點是僅與編譯的源語言有回關,而後端則僅與編譯的目標語言及運行環境有關。
將編譯過程劃分成前端和後端,主要目的是在多種源語言和多答種目標語言的開發過程中,可以靈活搭配組合,消除重複開發的工作量,提高編譯系統的開發效率。
2、中間代碼生成和代碼優化部分不是每個編譯程序都必需的。
3、句子 是不包含非終結符的 句型
4、程序設計語言的單詞符號一般可分爲5種:常數、基本字、標識符、運算符和界符
5、通常程序設計語言的單詞符號都能用 正規文法、正規式 描述
6、語言不是二義性就是 存在一個文法不是二義性的 (這句是錯的:用二義性文法定義的語言也是二義性的)一個語言可以有多種文法來描述。