第四章语法分析自上而下.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文档。上传文档
查看更多

预测分析程序有四部分求值X:=A∨BD条件控制WHILEA∨BDDOSIFA∨BDTHENS1ELSES21)一个输入:含有要分析的串,右端有#2)一个栈:栈底是#,栈内是一系列文法符号。 开始时,#和S先进栈3)分析表:二维数组M[A,a],其中a∈VT;A∈VN4)输出:根据分析表内元素做规定的语义动作第29页,共60页,星期日,2025年,2月5日分析程序的动作程序测定栈顶有X和当前输入符a,由(X,a)决定程序动作,三种可能: 1)若X=a=#,分析停止,宣告成功地完成分析; 2)若X=a≠#,则X弹出栈,下移输入指针; 3)若X∈VN,则去查分析表M的元素M[X,a],该元素或为X的产生式,或为一个出错元素。第30页,共60页,星期日,2025年,2月5日如:M[X,a]={X→UVW},就用WVU(U在顶)替换栈顶的X作为输出;如:M[X,a]=error,则调用error程序。对第3)条,X∈VN,查分析表M的元素M[X,a]第31页,共60页,星期日,2025年,2月5日分析表格式id+*()#EE→TE′E→TE′E′E′→+TE′E′→εE′→εTT→FT′T→FT′T′T′→εT′→*FT′T′→εT′→εFF→idF→(E)E→TE′ E′→+TE′|εT→FT′ T′→*FT′|εF→(E)|i第32页,共60页,星期日,2025年,2月5日例4.5按预测分析程序,对于输入id+id*id所作动作如下所示:栈输入输出1#Eid+id*id#2#E′Tid+id*id#E→TE′3#E′T′Fid+id*id#T→FT′4#E′T′idid+id*id#F→id5#E′T′+id*id#6#E′+id*id#T′→ε7#E′T′++id*id#E′→+TE′#E′Tid*id##E′T′Fid*id#T→FT′M[E,id]=E→TE′M[T,id]=T→FT′左部出栈,右部反序压栈!M[F,id]=F→id匹配,id出栈输入串指针后移XaEidTidFididid第33页,共60页,星期日,2025年,2月5日栈输入输出10#E′T′idid*id#F→id11#E′T′*id#12#E′T′F**id#T′→*FT′13#E′T′Fid#14#E′T′idid#F→id15#E′T′#16#E′#T′→ε##E′→ε有:X=a=#,分析成功。ididXaT′id**FidididT’#E’###第34页,共60页,星期日,2025年,2月5日结论:①输出的产生式就是最左推导的产生式。栈中放右 部,等待与α匹配;②表指出(栈顶,a)时,如何扩充树,出错马上发 现。实质: 栈:残缺规范句型 表:指出VN按哪一条扩充,依赖于VT上述分析过程生成的语法树:第35页,共60页,星期日,2025年,2月5日F→(E)F→i

文档评论(0)

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

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

1亿VIP精品文档

相关文档