网站大量收购闲置独家精品文档,联系QQ:2885784924

编译原理课件-属性文法和语法制导翻译.pptxVIP

编译原理课件-属性文法和语法制导翻译.pptx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共74页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
属性文法和语法制导翻译;6.1 属性文法;6.1 属性文法;属性 综合属性:“自下而上”传递信息 继承属性:“自上而下”传递信息 在一个属性文法中,对应于每个产生式A→?都有一套与之相关联的语义规则,每条规则的形式为: b:=f(c1,c2,…,ck) 这里,f是一个函数,而且或者 1. b是A的一个综合属性并且c1,c2,…,ck是产生式右边文法符号的属性,或者 2. b是产生式右边某个文法符号的一个继承属性并且c1,c2,…,ck 是A或产生式右边任何文法符号的属性。 属性b依赖于属性c1,c2,…,ck。;说明 终结符只有综合属性,由词法分析器提供 F → digit digit .lexval 非终结符既可有综合属性也可有继承属性,文法开始符号的所有继承属性为属性计算前的初始值。 F → digit F.val, digit .lexval;说明 对出现在产生式右边的继承属性和出现在产生式左边的综合属性都必须提供一个计算规则。属性计算规则中只能使用相应产生式中的文法符号的属性 F → digit F.val= digit .lexval 出现在产生式左边的继承属性和出现在产生式右边的综合属性不由所给的产生式的属性计算规则进行计算,它们由其它产生式的属性规则计算或者由属性计算器的参数提供 语义规则所描述的工作可以包括属性计算、静态语义检查、符号表操作、代码生成等等。 ;例,考虑非终结符A,B和C,其中,A有一个继承属性a和一个综合属性b,B有综合属性c,C有继承属性d。产生式A→BC可能有规则 C.d:=B.c+1 A.b:=A.a+B.c 而属性A.a和B.c在其它地方计算 ; 产 生 式 L→En E→E1+T E→T T→T1*F T→F F→ (E) F→digit ;综合属性 在语法树中,一个结点的综合属性的值由其子结点和它本身的属性值确定。 使用自底向上的方法在每一个结点处使用语义规则计算综合属性的值 仅仅使用综合属性的属性文法称S-属性文法; 产 生 式 L→En E→E1+T E→T T→T1*F T→F F→ (E) F→digit ;3*5+4n的带注释的语法树 ;继承属性 在语法树中,一个结点的继承属性由此结点的父结点和/或兄弟结点和其本身的某些属性确定 用继承属性来表示程序设计语言结构中的上下文依赖关系很??便; 产 生 式 语 义 规 则 D→TL L.in := T.type T→int T.type := integer T→real T.type := real L→L1, id L1.in :=L.in ? addtype(id.entry, L.in) L→id addtype(id.entry, L.in) ;句子real id1,id2,id3的带注释的语法树 ;第六章 属性文法和语法制导翻译;6.2 基于属性文法的处理方法 ;6.2 基于属性文法的的处理方法 ;6.2.1 依赖图 ;对于一棵给定的语法树,依赖图按以下步骤构造:;;句子real id1,id2,id3的带注释的语法树的依赖图;良定义的属性文法;属性的计算次序 ;句子real id1,id2,id3的带注释的语法树的依赖图;6.2 基于属性文法的的处理方法 ;6.2.2 树遍历的属性计算方法; 产 生 式 语 义 规 则 S→XYZ Z.h := S.a X.c := Z.g S.b := X.d -2 Y.e := S.b X→x X.d :=2*X.c Y→y Y.f := Y.e*3 Z→z Z.g :=Z.h+1 ;假设S.a的初始值为0,输入串为xyz;6.2 基于属性文法的的处理方法 ;6.2.3 一遍扫描的处理方法 ;按照一遍扫描的编译程序模型理解语法制导翻译法;一遍扫描的处理方法 ;6.3 S-属性文法的自下而上计算 ;在分析栈中使用一个附加的域来存放综合属性值 假设语义规则A.a:=f(X.x,Y.y,Z.z)是对应于产生式A→XYZ的 ;;;;;;第六章 属性文法和语法制导翻译;一遍扫描的处理方法 ;6.4

文档评论(0)

子不语 + 关注
官方认证
服务提供商

平安喜乐网络服务,专业制作各类课件,总结,范文等文档,在能力范围内尽量做到有求必应,感谢

认证主体菏泽喜乐网络科技有限公司
IP属地山东
统一社会信用代码/组织机构代码
91371726MA7HJ4DL48

1亿VIP精品文档

相关文档