语法(二)解析.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文档。上传文档
查看更多
machunyan 西北工业大学软件与微电子学院 * 本章小结 LR分析算法的逻辑结构: 总控程序 a1a2…aiai+1…an$ 动作表 状态转换表 分析表 输出 Xm . . . X1 $ 状态栈 文法符号栈 m . . . 1 0 识别活前缀的自动机状态 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * * machunyan 西北工业大学软件与微电子学院 * 构造文法A→(A)|a 的 LR(1)项目集合的DFA ; 首先扩展该文法: A’→A A→(A) A→ a CLOSURE( {[A’→ . A,$ ]} ) ? machunyan 西北工业大学软件与微电子学院 * [A’→.A , $] [A→.(A), $] [A→.a, $] 0 [A’→A. , $] 1 A [A→a. , $] 3 a [A→(.A) , $] [A→.(A), )] [A→.a , )] 2 ( [A→(A.), $] 4 A ( [A→(.A) , )] [A→.(A), )] [A→.a , )] 4 a [A→a. , )] 6 a ) [A→(A)., $] 7 ( [A→(A.), )] 8 A ) [A→(A)., )] 9 machunyan 西北工业大学软件与微电子学院 * LR(1)分析表构造规则: 对于文法G[S],其LR(1)分析表的构造规则为: 1. 对于[A?α.x?, a]?状态i,且GO(i,x)=j. 若x?VT,则置Action[i,x]=Sj 若x?VN ,则置Goto[i,x]=j 2. 对于[A?α. , a]?状态i,若A?α是文法的第j个产生式,则置 Action[i,a]=rj 3.对于[S?α.,$]?状态i,则action[i,$]=acc 4.其它情况置错。 machunyan 西北工业大学软件与微电子学院 * 根据文法A→(A)|a 的 LR(1)项目集合的DFA ,构造其对应的LR(1)分析表: 给产生式编号: (0) A’→A (1) A→(A) (2) A→ a machunyan 西北工业大学软件与微电子学院 * [A’→.A , $] [A→.(A), $] [A→.a, $] 0 [A’→A. , $] 1 A [A→a. , $] 3 a [A→(.A) , $] [A→.(A), )] [A→.a , )] 2 ( [A→(A.), $] 4 A ( [A→(.A) , )] [A→.(A), )] [A→.a , )] 4 a [A→a. , )] 6 a ) [A→(A)., $] 7 ( [A→(A.), )] 8 A ) [A→(A)., )] 9 machunyan 西北工业大学软件与微电子学院 * 状态 Action Goto ( ) a $ A 0 S2 S3 1 1 acc 2 S4 S6 4 3 r2 4 S7 4 S4 S6 8 6 r2 … machunyan 西北工业大学软件与微电子学院 * 用LR(1)分析算法对输入串(a)的分析步骤: 步骤 状态栈S 符号栈X 动作 输入符号 1 0 $ S2 (a)$ 2 02 $( S6 a)$ 3 026 $(a r2(A?a) )$ 4 024 $(A S7 )$ 4 0247 $(A) r1(A→(A)) $ 6 01 $A acc $ machunyan 西北工业大学软件与微电子学院 * (0)E?E (1)E?(L) (2)E? a (3)L?L,E (4)L?E 构造下面文法的LR(1)分析表: 首先构造其LR(1)项目的DFA machunyan 西北工业大学软件与微电子学院 * (0)E?E (1)E?(L) (2)E? a (3)L?L,E (4)L?E [E’? .E , $] [E? .(L) , $] [E?.a , $] 0 E [E’? E.,$] 1 ( 2 [E ? a. , $ ] 3 a L E ( a [E? (.L) , $] …… machunyan 西北工业大学软件与微电子学院 * [E? (.L) , $

文档评论(0)

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

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档