2018-6-11 seo達人
如果您想訂閱本博客內(nèi)容,每天自動發(fā)到您的郵箱中, 請點這里
1.總結(jié)
屬性文法是在上下文無關(guān)文法的基礎(chǔ)上為每個文法符號(終結(jié)符或非終結(jié)符)配備若干個相關(guān)的“值”(稱為屬性)。
屬性代表與文法符號相關(guān)的信息,和變量一樣,可以進行計算和傳遞。屬性分為綜合屬性和繼承屬性。
綜合屬性用于“自下而上”傳遞信息,在語法樹中,一個結(jié)點的綜合屬性的值,由其子結(jié)點的屬性值確定。
繼承屬性用于“自上而下”傳遞信息,在語法樹中,一個結(jié)點的繼承屬性由此結(jié)點的父結(jié)點和/或兄弟結(jié)點的某些屬性確定。
屬性計算的過程即是語義處理的過程,對于文法的每一個產(chǎn)生式配備一組屬性的計算規(guī)則,則稱為語義規(guī)則。
語義規(guī)則所描述的工作包括:屬性計算、靜態(tài)語義檢查、符號表操作、代碼生成等。
抽象語法樹指從語法樹中去掉對翻譯不必要的信息,而獲得更有效的源程序中間表示。
L-屬性文法的自頂向下翻譯,屬性的計算次序受分析方法所限定的分析樹結(jié)點建立次序的限制,分析樹的結(jié)點是自左向右生成,如果屬性信息是自左向右流動,那么就有可能在分析的同時完成屬性計算。
S—屬性文法的自下而上計算,S—屬性文法,它只含有綜合屬性。綜合屬性可以在分析符號串的同時由自上而下的分析器來構(gòu)造,分析器可以保存與棧中文法符號有關(guān)的綜合屬性值,每當(dāng)進行歸約時,新的屬性值就由棧中正在歸約的產(chǎn)生式右邊符號的屬性值來計算,可以通過擴充分析器中的棧來存放這些綜合屬性值。S-屬性文法的翻譯器通??山柚贚R分析器實現(xiàn)。
翻譯模式是語法制導(dǎo)定義的一種便于翻譯的書寫形式。其中屬性與文法符號相對應(yīng),語義規(guī)則或語義動作用花括號{ }括起來,可被插入到產(chǎn)生式右部的任何合適的位置上。這是一種語法分析和語義動作交錯的表示法,他表達在按深度優(yōu)先遍歷分析樹的過程中何時執(zhí)行語義動作。翻譯模式給出了使用語義規(guī)則進行計算的順序??煽闯墒欠治鲞^程中翻譯的注釋。
2.感悟
這一章主要內(nèi)容是SDD語法制導(dǎo)定義和SDT語法制導(dǎo)翻譯方案,通過給CFG中的文法符號設(shè)置語義屬性來表示語法成分對應(yīng)的語義信息,而語義屬性通過相關(guān)聯(lián)的語義規(guī)則計算,在對語法分析的過程中進行翻譯。
藍藍設(shè)計( m.820esy.cn )是一家專注而深入的界面設(shè)計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計、BS界面設(shè)計 、 cs界面設(shè)計 、 ipad界面設(shè)計 、 包裝設(shè)計 、 圖標定制 、 用戶體驗 、交互設(shè)計、 網(wǎng)站建設(shè) 、平面設(shè)計服務(wù)
藍藍設(shè)計的小編 http://m.820esy.cn