第五章第5节 语法制导翻译方案SDT
2020-03-24 本文已影响0人
化二缺
语法制导翻译方案SDT
语法制导翻译方案是在产生式右部分中嵌入程序片段(语义动做)的 CFG


S-SDD 转换为 SDT
将一个S-SDD转换为SDT的方法:将每个语义动作都放在产生式的最后

S-属性定义的SDT实现
如果一个S-SDD 的基本文法可以使用LR 分析技术
那么它的SDT 可以在LR 语法分析过程中实现
image.png
拓展的LR 语法分析栈

将语义动作中的抽象定义式改写成具体可执行的栈操作










将L-SDD 转换为SDT


L-属性定义的SDT 实现

