- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(2)消除间接左递归 将间接左递归变为直接左递归,然后消除直接左递归。A→aBA→BbB→AcB→d A→aBA→Bb B→aBcB→BbcB→d A→aBA→Bb B→aBcB | dB B→bcB |ε 5.5 确定的自顶向下分析方法 1.递归子程序法 2.预测分析法 1.递归子程序法 递归下降法(Recursive-Descent Parsing) 对每个非终结符按其产生式结构产生相应语法分析子程序. 终结符产生匹配命令 非终结符则产生调用命令 文法递归相应子程序也递归,所以称这种方法为递归子程序方法或递归下降法。 假设有文法 Z→aBa B→bB|c 则相应的递归子程序可如下: procedure Z( ) begin if token=a then Match(a); B; Match(a) else error end; procedure B ( ) begin if token=b then Match(b); B; else if token=c then Match(c); else error end; 主程序:Begin readtoken Z end PROCEDURE match(t); BEGIN???? IF token=t???? THEN token:=nexttoken???? ELSE error? END; 2.预测分析法 一. 基本思想 预测分析是在每步推导中,对被替换的非终结符号A和当前向前看符号a能选择A的某条产生式进行推导。 非递归预测分析的基本思想是,根据文法G,构造一张分析表M,表中元素M[A,a]存放的,要么是被选择的产生式(正确分析情况);要么是出错处理程序入口(分析出现错误)。整个分析是在分析表M的驱动下完成的。 二、预测分析表的构造 1.对文法G的每个产生式A??执行第2步; 2.对每个终结符号a∈SELECT(A??),把 A??加至M[A,a]中; 3.把所有无定义的M[A,a]标上错误标记。 置ip指向w#的第一个符号,#进栈,S(开始符号)进栈 ??? ?repeat ??? 令X是栈顶符号,a是ip所指向的符号; ? ?? if X是一个终结符号或#then ????? ?? if X=a then ?????? ????? 把X从栈中弹出,并且更新ip ????????? else error() ???? else /*X是非终结符号*/ ???? if M[X,a]= X→Y1Y2…Yk then begin ?????????? 把X从栈中弹出; ?????????? 把Yk,Yk-1,…, Y1压入栈中,即Y1在顶上; ?????????? 输出产生式X→Y1Y2…Yk ???? end ?????else error() ???until X=# /*栈为空*/ 三、预测分析程序 例 G:E →E+T | T T →T*F | F F → i | ( E )试分析输入串i+i*i是否是句子. 1.将文法转换为LL(1)文法 E →E+T | T T →T*F | F F → i | ( E ) 消除左递归 E →TE E → +TE | ε T →FT T → *FT | ε F → i | ( E ) 可推出ε的非终结符表: E →TEE → +TE | ε T →FTT → *FT | ε F → i | ( E ) E E T T F 是 是 否 否 否 各非终结符的FIRST集和FOLLOW集: FIRST(E)= FIRST(E)= FIRST(T)= FIRST(T)= FIRST(F)= FOLLOW(E)= FOLLOW(E)= FOLLOW(T)= FOLLOW(T)= FOLLOW(F)= E→TEE→+TE|ε T→FTT→*FT|ε F→i|( E ) { ( , i } { + , ε } { ( , i } { * , ε } { ( , i } { ) , # } { ) , # } { + , ) , # } { + , ) , # } { * , + , ) , # } 各产生式的SELECT集: E →TEE → +TE | ε T →FTT → *FT | ε F → i | ( E ) SELECT(E →TE) = SELECT(E → +T
您可能关注的文档
- 选秀节目政策法规素材.ppt
- 选学第七章基于SystemGenerator的DSP系统开发技术素材.ppt
- 编排设计第一章第三节印刷基础知识素材.ppt
- 编童话故事作文素材.ppt
- 编校符号及其使用素材.ppt
- 选择安惠的十八理由素材.ppt
- 编写故事神鸟素材.ppt
- 选择保险丝的十大要素素材.ppt
- 编写规则2009版素材.ppt
- 所有钢筋计算135页试卷.ppt
- 实验室危废随意倾倒查处规范.ppt
- 实验室危废废液处理设施规范.ppt
- 实验室危废处置应急管理规范.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第20课时 中国的地理差异.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第21课时 北方地区.ppt
- 危险废物处置人员防护培训办法.ppt
- 危险废物处置隐患排查技术指南.ppt
- 2026部编版小学数学二年级下册期末综合学业能力测试试卷(3套含答案解析).docx
- 危险废物处置违法案例分析汇编.ppt
- 2026部编版小学数学一年级下册期末综合学业能力测试试卷3套精选(含答案解析).docx
最近下载
- 企业运维服务质量管理制度.docx VIP
- 2023年外国文学史题库及答案题库.pdf VIP
- 个人挖机机械租赁合同(2025版).docx VIP
- 2025年熔化焊接与热切割焊工作业证理论考试笔试试题(1000题)含答案.pdf
- 普通外科2025年终工作总结及2026年工作计划汇报PPT.pptx VIP
- 2026届广东东莞中学、广州二中、惠州一中、深圳实验、珠海一中、中山纪念中学六校高二上学期十二月联考物理试卷答案.pdf VIP
- 小学英语课堂文化意识渗透策略——基于人教版PEP教材文化内容分布统计.docx VIP
- 放射科培训计划.docx VIP
- 竞业限制案件审理标准与规则制定.docx VIP
- 江苏省南京市联合体2024--2025学年九年级上学期期末练习卷 (原卷版).pdf VIP
原创力文档


文档评论(0)