编译原理Chapter考试重点.pptVIP

  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文档。上传文档
查看更多
编译原理Chapter考试重点

第7章 LR分析法 主要内容: 7.1 LR分析法概述 7.2 LR(0)分析 7.3 SLR(1)分析 7.4 LR(1)分析 7.5 LALR(1)分析 7.6 使用二义文法 最常用和最有效的模型——移进-归约方法 例: G[S] S – E E – T | E + T T – i | (E) 1、规约: 如能找到一产生式 A – w 且栈中的内容是 qw (q 可能为空), 则可以将其归约为 qA。即倒过来 用这个产生式。如上例,若栈中内容是 (i ,我们使用 产生式 T– i柄把栈中内容归约为(T 2、移进: 如不能执行一个归约且在未消化的输入中还 有字符,就把它从输入移到栈中。如上例,假定栈中 内容是 ( ,输入中还有 i+i)#。不能对( 执行一个归约, 因为它不和任何产生式的右端匹配。所以把输入的第 一个符号移到栈中,于是栈中内容是 (i ,而余留的输 入是 +i)# 。 3、规约的一个特殊情况:栈中的全部内容w归约 为开始符号S (即施用 S – w),且没有余留输 入了,意味着已成功分析了整个输入串。 4、移进归约分析中还会出现一种情况,就是出 错,比如当前的token不能构成一个合法句子的 一部分,例如上面的文法,试分析i+)时就会发生 错误。 符号栈 剩余的符号串 分析动作 1 # (i + i)# 移进 2 #( i + i)# 移进 3 #(i + i)# 归约: T – i 4 #(T + i)# 归约: E – T 5 #(E + i)# 移进 6 #(E + i)# 移进 7 #(E + i )# 归约: T – i 8 #(E + T )# 归约: E – E+T 9 #(E )# 移进 10 #(E) # 归约: T – (E) 11 #T # 归约: E – T 12 #E # 归约: S – E 13 #S # 8 (E + T )# 归约:E – E + T 为什么对E+T进行规约? 9 (E ) # 若使用了E–T,在栈中形成的(E+E不是规范句型的 活前缀(viable prefixes),(E+E不能和任何产生式的 右端匹配 (E+E)不是规范句型活前缀是规范句型(右句型) 的前缀,但不超过句柄 注意:移进归约分析的栈中出现的内容加上余留输入 构成规范句型 规范推导/规范句型/规范归约 最右推导:在推导的任何一步α?β,其中α和β是句型, 都是对α中的最右非终结符进行替换。 最右推导被称为规范推导。由规范推导所得的句型称为规范 句型 例:G[S]: S→E E→E+T | T T→(E) | i S?E ?T ?(E) ?(E+T) ?(E+i) ?(T+i) ?(i+i) 规范归约: 假定α是G的一个句子,称序列αn、αn-1 …、α0是α的一个 规范归约,如果该序列满足: 1、 αn = α 2、 α0为文法的开始符号 3、对任何j,0j=n, αj-1是从αj经把句柄替换为相应产生 式的左部而得到的 7.1

文档评论(0)

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

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

1亿VIP精品文档

相关文档