- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 自下而上得语法分析
第5章 自下而上的语法分析 5.1 自下而上的语法分析概述 5.2 LR分析法的基本原理 5.3 项目集规范族的构造 5.4 有效项目(略) 5.5 LR(0)分析表的构造 5.6 SLR(1)分析表的构造 5.7 LR语法分析器的控制程序 5.8 二义文法在LR分析法中的应用 5.9 应用举例(略) 5.10 LR分析法在词法分析器自动构造中的应用(略) 5.2 LR分析法的基本原理 5.3项目集规范族的构造 5.5 LR(0)分析表的构造 5.6 SLR(1)分析表的构造㈠SLR(1)分析法的引出 5.7 LR语法分析器的控制程序 5.8 二义文法在LR分析法中的应用 ㈠数据结构 ①LR分析表 ②状态栈 在归约时,控制程序应按原路径折回,故在分析过程中需将所经历的状态记录下来,以便获得折回点。设置状态栈,用于记录分析过程中所经历的状态,即路径。 ③符号栈 用于记录路径的符号,它和状态栈等高。符号栈的设置是为了便于说明,实际语法分析器无符号栈。 ④产生式右部符号串长度 因每个状态仅识别一个符号,退回的状态数和构成句柄的字符数相等,故需存储产生式右部符号串长度。 ⑤产生式左部符号 归约后,根据左部符号进入下一状态。 * 从叶结点出发,步步向上归约。若能归约到根结点,说明输入串是文法的一个句子,否则输入串存在语法错误。 ㈠常用的自下而上语法分析方法 ①算符优先分析法(本书略) 宜于手工构造,特别适合于算术表达式的语法分析。但适用范围较小,实用意义不大。 ②LR分析法 适用范围广,宜于自动生成,目前大多数编译程序的语法分析器都采用LR分析法。 ㈡LR分析器组成 由控制程序和分析表组成。控制程序与文法无关,分析表随文法而异。 ㈢LR分析法的优点 适用范围大,对文法要求低,无需消除左递归,无需消除左因子。 ㈣LR分析法的缺点 实现代价高,LR分析表的规模要比同一文法的LL(1)分析表大得多。 ㈤LR分析法的分类 ①LR(0)分析法 简单、分析能力弱,是LR分析法的基础。 ②SLR(1)分析法 或称简单LR分析法。分析能力中,实现代价同LR(0),比较容易实现,具有实用价值。 ③LR(1)分析法(本书略) 或称规范LR分析法,分析能力强,实现代价高,或者说分析表的规模非常大。 ④LALR(1)分析法(本书略) 或称向前LR分析法。分析能力介于SLR(1)和LR(1)之间,实现代价同LR(0),有实用价值,但构造方法较复杂。 a A b a A a A c a A c d a A a b a a A c B a A c B e S 1 2 3 4 5 6 7 8 9 10 因最终归约到根结点,输入串abbcde是文法的一个句子。 5.1 自下而上的语法分析概述 ㈠概述 实质上是一种移进归约法,设置一个栈,将输入串符号逐个移进栈内,一旦发现栈顶形成某个产生式的候选式时,立即将栈顶这一部分符号替换(归约)成该产生式的左部符号。 例给定文法G: S→aAcBe A→b A→Ab B→d 和输入串abbcde, 其移进归约过程如下所示: ㈡问题 从第④步到第⑤步有二种选择,可将b归约成A,栈顶成aAA;也可将Ab归成A,栈顶成aA,显然后者是正确的。 由此可见,可归约串必然是产生式的右部符号串(必要条件),但是构成某产生式右部的符号串未必是可归约串,故需精确定义可归约串。 ㈢句柄和规范归约 ①短语 设αβδ是文法G的一个句型。如果有SαAδ 且 Aβ,则称β是句型αβδ中相对于非终结符A的短语,其中α、β、δ∈(VT∪VN)*。 ②直接短语(简单短语) 设αβδ是文法G的一个句型。若有SαAδ且Aβ,则称β是句型αβδ中相对于非终结符A(或称相对于规则A→β)的直接短语,其中α、β、δ∈(VT∪VN)*。 ③句柄 一个句型的最左面的直接短语称为该句型的句柄。 Aβ或A→β不一定意味着β是一个短语,还必须有SαAδ这一条件。离开句型来讨论短语是没有意义的,这一点和求β的first集不一样。 短语是直接短语的必要条件,直接短语是句柄的必要条件。 若一个文法是无二义的,则句型的短语和直接短语是确定的,句柄是唯一的。 在LR分析法中,句柄就是可归约串。 继续问题的讨论。句型aAbcde中存在三个短语,它们是Ab、d和aAbcde,其中Ab和d是直接短语,句柄是Ab。不能因为存在规则A→b,就断定b是这个句型的一个短语,b不是句柄,甚至连短语都不是。 ④规范归约(最左归约) 设α是文法G的
您可能关注的文档
最近下载
- 电气联锁保护培训课件.pptx VIP
- 视觉引导类应用总结( 包含详细的旋转中心计算公式).pptx VIP
- 鲁棒控制-01.ppt VIP
- 第一单元-第2课-《国色之韵》课件+-2025—2026学年+人教版(2024)初中美术八年级上册.pptx VIP
- 中医康复技术专业专业自评报告.docx VIP
- 断路器及GIS多型号液压操动机构动作原理及故障处理方法.pptx
- 水质石油类的测定紫外分光光度法.pdf VIP
- 北师大版五年级上册数学第一单元测试卷.doc VIP
- GB50974-2014 消防给水及消火栓系统技术规范.docx
- 2024年高考作文哲思化写作素材4 ——《西方现代思想讲义》(弗洛伊德、萨特).docx VIP
文档评论(0)