程序设计语言 译原理(第三版)第6章.pptVIP

  • 1
  • 0
  • 约1.22万字
  • 约 68页
  • 2018-07-09 发布于江苏
  • 举报
程序设计语言 译原理(第三版)第6章

2. 特点: 为每一个语义规则建立一个包含赋值的动作,并 把这个动作放在相应的产生式右边的末尾. 3. 转换左递归翻译模式的一般方法: A→A1Y { A.a=g(A1.a ,Y.y } A→X { A.a= f (X.x) } 递归下降分析器的构造 p156 举例 AST:Abstract Syntax Tree 6.5 自下而上的计算继承属性 L-属性文法的自上而下分析翻译方法,适用于 所有基于LL(1)文法和许多基于LR(1)文法的L-属性 文法,是S-属性文法自下而上翻译技术的一般化。 (1)从翻译模式中去掉嵌入在产生式中间的动作 (2)分析栈中的继承属性 (3)模拟继承属性的计算 (4)用综合属性代替继承属性 6.5 自下而上的计算继承属性 S-属性文法翻译自下而上规约时进行,翻译模式允许翻译动作嵌入产生式,如何保证嵌入的动作在产生式的末尾? 标记非终结符 M →ε 标记非终结符代替嵌入在产生式中间的语义动作, 并将这个动作放在产生式M →ε的末尾。 6.5 自下而上的计算继承属性 A→XY 综合属性 X.s 继承属性 Y.i 复写: Y.i := X.s 6.5 自下而上的计算继承属性 6.5 自下而上的计算继承属性 文法与属性位置 唯一确定 —— 计算属性的确

文档评论(0)

1亿VIP精品文档

相关文档