2013 lecture5-syntax analysisII (Down-Top Syntax Analysis)汇.pptVIP

2013 lecture5-syntax analysisII (Down-Top Syntax Analysis)汇.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2013 lecture5-syntax analysisII (Down-Top Syntax Analysis)汇

第五章 语法分析——自底向上分析技术;2.识别算法;语 法 分析器;自底向上 S::=aAS?a A ::= SbA ?SS ?ba ;定义 短语,直接短语,句柄;3. 要解决的基本问题;5.1.2 讨论的前提;5.1.3 基本实现方法: 移入-归约法;5.2 算符优先分析法;这个归约过程是唯一的?。上述归约过程中起决定作用的是相邻两个终结符号之间的优先关系???。一旦确定了这种优先关系,就可以借助这种关系去寻找可归约串并进行归约。??终结符号a与b之间的优先关系有三种: ????a ?? b 表示a的优先级低于b ????a ? b 表示a的优先级等于b ????a ?? b 表示a的优先级大于b ;注意: ? 1. 算术关系“”,“=”和“”与优先关系具有十分不同的性质。例如,a<·b并不一定意味着b·a,例如:+ ·(,(· +。 2. 决定优先关系方法: (a) 直观方法:代数规则; (b)对于一个无二义性文法,有机械方法。 ;利用算符优先关系寻找右句型的可归约串?; 找右句型的可归约串?的方法 ? $ ·id · + ·id · * ·id · $ 1·找可归约串?的右端; 2 ·找可归约串?的左端; 3 ·归约 使用下面的优先关系表,分析过程如下:; 栈 关系 输入 动作;????算法 算符优先分析法 ?????方法: ???? ?if (a??b) or (a?b) then begin /* 移进* / ?????? ????? 把b推入栈中; ????????????? 使ip前进到下一个符号; end if a·?b then /* 归约* / ???? ????repeat ?????????????从栈中弹出符号 ????? ????until 栈顶终结符号??最近弹出的终结符号 else error; 算法中,每一个归约串中至少包含一个终结 符号,用到了一个重要的概念和结论。 ???定义 设G是一个算符文法,β是句型 ??δ关于A的短语(即有S αAδ且A β ) 且β至少含有一个终结符号,并且除自身之外 不再含有任何更小的 带有终结符号的短语, 则称β是句型αβδ关于A的素短语。所谓最 左素短语是指处于句型最左边的那个素短语。 设G是一个算符文法,如果G中任何两个 终结符号之间至多有一种优先关系存在,则是 一个算符优先文法。 算符优先文法句型的最左素短语是唯一的。;句柄和素短语的区别: G[E]:E::=E+T?T E ::=E+E ?E*E ?(E) ?id T::=T*F?F F ::=(E) ?id;算符优先关系表的构造 一.直观方法:代数规则 (1)id是最基本的运算量 (2)一目运算符号减,例如, -id-id (3)?是右结合。 二.形式方法(本节总结时有简单介绍); 表 优先关系表;优先函数? 为了节约存储空间和便于执行比较运算?,用两个优先函数f和g,它们是从终结符号映射到整数的函数。对于终结符号a和b选择f和g,使之满足: 1.当a<·b时, f(a)<g(b); ????2. 当a = b时, f(a)= g(b); ???3. 当a · b时, f(a) g(b)。 ?于是a和b之间的优先关系可以由比较f(a) 与g(b)的大小来决定。 损失:错误检测能力降低,例如, id ·id不存在, f(id) g(id)可比较。;表对应的优先函数:;算法 从优先关系构造优先函数 方法:1.?a?VT?{$},建立两个符号fa和ga; 2. 若a = b, 则把fa和gb分在一组; 3 . ?a,b ?VT, 若a ??b,则从fa至gb画一条弧; 若a ??b,则从gb至fa画一条弧; 4 .若图中无环,则存在优先函数, f(a)和g(b)等于从fa 和gb出发的 最长路径。;gid

您可能关注的文档

文档评论(0)

hhuiws1482 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档