长安大学《编译原理》chapter5.pdfVIP

  • 10
  • 0
  • 约4.17万字
  • 约 77页
  • 2018-01-15 发布于浙江
  • 举报
软件工程专业本科课程 编 译 原 理 Compilers Principles 长安大学信息工程学院软件工程系 主讲:李 鹏 第五章 语法制导的翻译 • 介绍形式化的语义描述方法—语法制导的翻译, 包括它的两种具体形式,语法制导的定义和翻 译方案 。 • 介绍语法制导的翻译实现方法。 2 5.1 语法制导定义 语法制导定义的形式 • 基础文法:在语法制导定义中,其中的文法; • 每个文法符号有一组属性; • 每个文法产生式A  有一组形式为b :=f (c , c , …, c ) 的语义 1 2 k 规则,其中f 是函数,b和c , c , …, c 是该产生式文法符号的 1 2 k 属性。 ① 综合属性:如果b是A 的属性,c1 , c2 , …, ck 是产生式右 部文法符号的属性或A 的其它属性。 ② 继承属性:如果b是产生式右部某个文法符号X 的属性。 5.1 语法制导定义 3 5.1 语法制导定义 属性文法:指语义规则 函数无副作用的语法制 语法制导定义的形式 导定义。 • 基础文法:在语法制导定义中,其中的文法; • 每个文法符号有一组属性; • 每个文法产生式A  有一组形式为b :=f (c , c , …, c ) 的语义 1 2 k 规则,其中f 是函数,b和c , c , …, c 是该产生式文法符号的 1 2 k 属性。 ① 综合属性:如果b是A 的属性,c1 , c2 , …, ck 是产生式右 部文法符号的属性或A 的其它属性。 ② 继承属性:如果b是产生式右部某个文法符号X 的属性。 5.1 语法制导定义 4 例:简单桌上计算器的语法制导定义 产 生 式 语 义 规 则 L E n L.val = E.val E E + T E.val = E .val + T.val 1 1 E  T E.val = T.val T  T * F T.val = T .val * F.val 1 1 T  F T.val = F.val F (E) F.val = E.val

文档评论(0)

1亿VIP精品文档

相关文档