-
抽象語法樹
鎖定
- 中文名
- 抽象語法樹
- 外文名
- abstract syntax tree
- 縮 寫
- AST
- 本 質
- 樹狀表現形式
- 應 用
- 計算機科學
- 相 對
- 具體語法樹
抽象語法樹簡介
之所以説語法是“抽象”的,是因為這裏的語法並不會表示出真實語法中出現的每個細節。比如,嵌套括號被隱含在樹的結構中,並沒有以節點的形式呈現;而類似於if-condition-then這樣的條件跳轉語句,可以使用帶有兩個分支的節點來表示。
抽象語法樹語法分析器
在計算機科學和語言學中,語法分析(英語:syntactic analysis,也叫parsing)是根據某種給定的形式文法對由單詞序列(如英語單詞序列)構成的輸入文本進行分析並確定其語法結構的一種過程。
語法分析器(parser)通常是作為編譯器或解釋器的組件出現的,它的作用是進行語法檢查、並構建由輸入的單詞組成的數據結構(一般是語法分析樹、抽象語法樹等層次化的數據結構)。語法分析器通常使用一個獨立的詞法分析器從輸入字符流中分離出一個個的“單詞”,並將單詞流作為其輸入。實際開發中,語法分析器可以手工編寫,也可以使用工具(半)自動生成。
[1]
抽象語法樹語法分析器分類
語法分析器的任務主要是確定是否可以以及如何從語法的起始符號推導出輸入符號串(輸入文本),主要可以通過兩種方式完成: