194頁/ 共631 頁
使用上下文無關文法來引導對語言的翻譯。
用於型別檢查和中間**生成。
5.1 語法制導定義(syntax-directed definition sdd)
是乙個上下文無關文法和屬性及規則的結合。
5.1.1 繼承屬性和綜合屬性
綜合屬性:在分析樹結點 n 上的非終結符號 a 的結合屬性是由 n 上的產生式所關聯的語義規則來定義的。
繼承屬性:在分析樹結點 n 上的非終結符號 b 的繼承屬性是由 n 的父結點上的產生式所關聯的語義規則來定義的。
5.1.2 在一棵語法分析樹的結點上對 sdd 求值
注釋語法分析樹(annotated parse tree)
5.2 sdd 的求值順序
依賴圖乙個工具,確定一棵給定的語法分析樹中各個屬性例項的求值順序。
屬性求值的順序
s- 屬性定義
如果乙個 sdd 的每個屬性都是綜合屬性,它就是 s 屬性的。
l- 屬性定義
具有受控***的語義規則
5.3 語法制導翻譯的應用
抽象語法樹的構造
型別的結構
5.4 語法制導的翻譯方案
字尾翻譯方案
字尾 sdt 的語法分析實現
產生式內容帶有語義動作的 sdt
從 sdt 中消除左遞迴
l- 屬性定義的 sdt
5.5 實現 l- 屬性的 sdd
5.6 總結
此章對我來說不容易理解。看了一遍基本沒懂。
編譯原理 語法制導翻譯
子問題 在語法分析基礎上邊分析邊翻譯 語法制導的翻譯方案syntax directed translation scheme sdt 決定於翻譯的目的,例如 產生什麼樣的中間 在對sdd的求值過程中,如果結點n的屬性a依賴於結點m1的屬性a1,m2的屬性a2,那麼我們必須先計算出mi的屬性,才能計算...
編譯原理屬性文法和語法制導翻譯
屬性文法 是在上下文無關文法的基礎上為每個文法符號 終結符或非終結符 配備若干個相關的 值 稱為屬性 屬性分類 綜合屬性和繼承屬性 綜合屬性 用於 自上而下 傳遞資訊 在語法樹中,乙個結點的綜合屬性的值,由其子結點的屬性值決定 s 屬性文法 僅僅使用綜合屬性的屬性文法 繼承屬性 用於 自上而下 傳遞...
編譯原理第六章 屬性文法和語法制導翻譯
第六章主要講了屬性文法 語義規則 基於屬性文法的處理 s屬性的自下而上計算 l 屬性文法的自頂向下翻譯等內容。一些基本的概念 屬性文法 是在上下文無關文法的基礎上為每個文法符號 終結符或非終結符 配備若干個相關的 值 稱為屬性 屬性 代表與文法符號相關的資訊,和變數一樣,可以進行計算和傳遞。綜合屬性...