《编译原理6_3_S_属性文法》由会员分享,可在线阅读,更多相关《编译原理6_3_S_属性文法(6页珍藏版)》请在金锄头文库上搜索。
1、第六章 属性文法和语法制导翻译 6 1 属性文法 6 2 基于属性文法的处理方法 6 3 S 属性文法的自下而上计算 6 4 L 属性文法和自顶向下翻译 6 5 自下而上计算继承属性 6 3 S 属性文法的自下而上计算 l综合属性 可以在分析输入符号串的同时由自下而上的 分析器来计算 lS 属性文法的翻译器通常可借助于LR分析器实现 l在对输入串进行语法分析的同时对属性进行计算 分析栈中的综合属性 Z zZ Y yY X xX state val top 图6 9 带有综合属性域的分析栈 l假设语义规则 A a f X x Y y Z z 对应于产生式 A XYZ l假设综合属性是刚好在每次
2、归约前计算的 表6 5 用LR分析器实现台式计算器 产 生 式 代 码 段 L E n print val top E E1 T val ntop val top 2 val top E T T T1 F val ntop val top 2 val top T F F E val ntop val top 1 F digit 注 ntop 新的栈顶指针 ntop top r 1 r 产生式右边长度 如 F E 应为 val top 2 val top 1 输入StateVal用到的产生式 3 5 4n 表6 6 翻译输入3 5 4n所作的动作 产 生 式 代 码 段 L E n print
3、val top E E1 T val ntop val top 2 val top E T T T1 F val ntop val top 2 val top T F F E val ntop val top 1 F digit 33 5 4n F dightF3 5 4n T FT3 5 4n T 3 5 4n T 53 5 4n F dight T F3 5 4n T T F T15 4n 4nE15E T 4nE 15 nE 415 4 nE F15 4F dight nE T15 4T F nE19E E T En19 L19L En 知识回顾知识回顾 Knowledge Knowledge ReviewReview