编译程序构造与实践第四章.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文档。上传文档
查看更多
* * 第四章 语法分析——自顶向下分析技术 4.1 引言 4.1.1 自顶向下分析技术概述 1. 基本思想 从语法分析树的角度看,自顶向下分析过程将以识别符号为根结点,试图向下构造语法分析树,其末端结点符号串正好与输入符号串相同。 自顶向下识别过程是一个不断往语法分析树中添加分支的过程, 分析(识别)技术、识别算法、识别程序 识别程序功能:进行句型分析(识别) 2. 讨论的前提 讨论的对象(输入)是符号串(中间表示形式) 讨论是以上下文无关文法为基础 分析过程从左到右逐个符号地进行 3. 输入与输出 输入:词法分析程序的输出(属性字序列) 输出:识别出是句子时,输出语法分析树或 其他内部中间表示;出错时报错。 4. 语法分析的基础文法是上下文无关文法 5. 要解决的基本问题 自顶向下分析技术要解决的基本问题: 在每一分析步,当关于非终结符号U展开, 而对于它存在若干个重写规则 U∷=u1|u2|…|un 时,如何确定替换U的ui (1≤i≤n)。 为什么自顶向下分析技术可行? 上下文无关文法与推导相关的特性 4.1.2 带回溯的自顶向下分析技术 1. 基本思想 当按U展开,而U::=u1|u2|…|un时,逐个试探。 面向目标的、试探的,因而带回溯的。 2. 例 G[S]: S∷=aBC B∷=ib|b C∷=DE|FG|c D∷=d E∷=eh F∷=de G∷=t 输入符号串:aibdet 分析结束时所得语法树及栈如图所示: 1S 栈 GOAL FAT SON BRO        1  S  0  6  0 ┌──┬─────┐   2 a 1  0  0 2a 3B 6C 3 B 1 5 2     ┌─┴─┐ 4  i 3 0 0 ┌─┐  7F 10G 5 b 3 0 4 4i 5b     │ 6 C 1 10 3 ┌─┐ 11t  7 F 6 9 0 8d 9e 8 d 7 0 0 9 e 7 0 8 10 G 6 11 7 11 t 10 0 0 (a)语法树 (b)分析结束时的栈 3. 问题及其解决 带回溯的自顶向下分析技术是 面向目标的、试探的,因而带回溯的。 1) 效率问题 回溯、查规则效率 2) 左递归问题 左递归的存在使自顶向下分析过程永世无穷。 解决方法: · 消去回溯性 使得对于任何U∈VN, U::=x1 | x2 | … | xn, 如果xi=* Tiv 和 xj=* Tjw, 且Ti ,Tj∈VT, 则 Ti≠Tj , i≠j, (1≤i, j≤n) 。 · 消去左递归 使得既无规则左递归,也非文法左递归, 即,不存在这样的非终结符号U,对于它有 U∷=U… 或 U=+

文档评论(0)

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

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

1亿VIP精品文档

相关文档