抽象語法樹

 ] ] 在計算機科學中 ， 抽象語法樹 （ Abstract Syntax Tree ， AST ） ， 或簡稱語法樹 （ Syntax tree ） ， 是源代碼語法結構的一種抽象表示 。 它以樹狀的形式表現編程語言的語法結構 ， 樹上的每個節點都表示源代碼中的一種結構 。 之所以說語法是 “ 抽象 ” 的 ， 是因爲這裏的語法並不會表示出真實語法中出現的每個細節 。 比如 ， 嵌套括號被隱含在樹的結構中 ， 並沒有以節點的形式呈現 ； 而類似於 if - condition - then 這樣的條件跳轉語句 ， 可以使用帶有三個分支的節點來表示 。 和抽象語法樹相對的是具體語法樹 （ 通常稱作分析樹 ） 。 一般的 ， 在源代碼的翻譯和編譯過程中 ， 語法分析器創建出分析樹 ， 然後從分析樹生成AST 。 一旦AST被創建出來 ， 在後續的處理過程中 ， 比如語義分析階段 ， 會添加一些信息 。 Category: 樹結構 Category: 形式語言