




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、LL的含义自左向右扫描分析输入符号串从识别符号开始生成句子的最左推导LL(1):向前看一个输入符号,便能唯一确定当前应选择的规则LL(k):向前看k个输入符号,才能唯一确定当前应选择的规则4.2.3 LL(1)文法的判别 要构造确定的自顶向下分析程序要求描述文法必须是LL(1)文法 1同一非终结符有多个候选式时 引起回溯的原因 【例4.1】 =acbGS: SaAbAcd|c(1)候选式的终结首符号相同(2)候选式的终结首符号相同【例4.8】 SAaAa| 21. FIRST集 FIRST():从可能推导出的所有开头终结符号或对于文法G的所有非终结符的每个候选式,其终结首符号集称为FIRST集
2、,定义如下:,则规定FIRST()若【例】 SaAbAcd|ca ,aVTFIRST()=a|FIRST(aAb) =aFIRST(cd) =cFIRST(c) =c【例】 SAaAa| FIRST(a) =aFIRST() = FIRST(Aa) =aFIRST(S) =aFIRST(A) =cFIRST(S) =aFIRST(A) =a, 3(1)若=a,且aVT ,则aFIRST(); 例: FIRST(i)=i FIRST(+TE)=+ETEE+TE|TFTT*FT|F(E)|i构造FIRST集的算法(2)若=X,XVN,且有产生式Xb,则把b加入到FIRST()中; 例: FIRST
3、(FT)=(,i ?4 将FIRST(X1)中的一切非的终结符加进FIRST(); 若FIRST(X1),则将FIRST(X2)中的一切非的终结符加进FIRST(); 若FIRST(X1)且FIRST(X2),则将FIRST(X3)中的一切非的终结符加进FIRST(); 依此类推,若对于一切1in,FIRST(Xi),则将加进FIRST()。(3)若=X1X2 Xn,其中XiVN , 1in;ETEE+TE|TFTT*FT|F(E)|i例:FIRST(FT)= 注意:要顺序往下做,一旦不满足条件,过程就要中断进行FIRST(F)-=(,i5FIRST(F)=(,iFIRST(T)=*,FIRS
4、T(T)=FIRST(F)-=(,iFIRST(E)=+,FIRST(E)= FIRST(T)-=(,iFIRST(TE)=FIRST(T)-=(,iFIRST(+TE)=+ FIRST()=FIRST(FT)= FIRST(F)-=(,iFIRST(*FT) =*FIRST((E))=(FIRST(i)=i【例4.9】 GEETEE+TE|TFTT*FT|F(E)|i62. FOLLOW集 FOLLOW(A):是所有句型中紧接A之后的终结符号或#对于文法G的非终结符的后继符号集称为FOLLOW集,定义如下: A,则规定#FOLLOW(A)若SAa,a VTFOLLOW(A) =a|S ETE
5、E+TE|TFTT*FT|F(E)|iT+TE ,则+FOLLOW(T)E7构造集合FOLLOW的算法(1)若为开始符号,则把“#”加入FOLLOW(A)中;(2)若BA (),则把FIRST()-加入FOLLOW(A)中; 注:FOLLOW集合中不能有(3)若BA 或BA,且则把FOLLOW(B)加入FOLLOW(A) 中。 ,ETEE+TE|TFTT*FT|F(E)|i#FOLLOW(E)由F(E)可知, )FOLLOW(E)由ETE,应把FOLLOW(E)加入FOLLOW(E)由E + TE 且E ,应把FOLLOW(E )加入FOLLOW(T)8【例4.10】 GEETEE+TE|TF
6、TT*FT|F(E)|i求FOLLOWFOLLOW(E)=#,) E是开始符号#FOLLOW(E) 又F (E) )FOLLOW(E)FOLLOW(E)=#,) E TE FOLLOW(E)加入 FOLLOW(E)FOLLOW(T)=+,),# E +TE FIRST(E)-加入FOLLOW(T) 又E, FOLLOW(E)加入FOLLOW(T)FOLLOW(T)= FOLLOW(T)= +,),# T FT FOLLOW(T)加入FOLLOW(T)FOLLOW(F)=*,+,),# T FT FOLLOW(F)=FIRST(T)- 又T FOLLOW(T)加入FOLLOW(F)FIRST(F)=(,iFIRST(T)=*,FIRST(T) =(,iFIRST(E)=+,FIRST(E)=(,i9若一个文法满足以下条件,则称该文法G为LL(1)文法:(1)文法不含左递归;(2)对于每个非终结符A的各个候选式的终结首符号集两两不相交。即,如果A1|2|n,则FIRST(i)FIRST(j)= ,其中1i,jn,且ij。(3)对于文法中每个非终结符A,若它某个候选式的终结首符号集包含,则FIRST(A)FOLLOW(A)3LL(1)文法的判别条件10【例4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高炮制作安装合同协议书
- 2025-2030中国跑腿服务行业市场深度调研及发展前景与投资前景预测研究报告
- 和店铺合租协议书合同
- 2024年北京中日友好医院招聘笔试真题
- 成人教育线上学习模式创新与远程教育平台建设报告
- 2025-2030中国螺旋填装机行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国蛋白质添加剂行业市场现状供需分析及投资评估规划分析研究报告
- 2025年教育质量评估与认证体系教育质量评价体系改革研究报告
- 事业编专业面试题及答案
- 潍坊电工试题及答案
- 2025年输变电电力变压器行业市场分析现状
- 专题19 介词和介词短语(清单+专练)-中考英语一轮复习知识清单
- 2025年医院基建科面试题及答案
- (一模)临沂市2025届高三高考第一次模拟考试历史试卷(含标准答案)
- 2026年版广西高等职业教育考试(新职教高考)普高生专用升高职大专《职业适应性测试》模拟试卷(第1套)
- 企业营销战略咨询服务协议
- 人教版(2024)七年级下册英语Unit 7 A Day to Remember 单元教学设计(共6课时)
- 基于机器视觉的焊缝缺陷检测方法及其应用研究
- 行测5000题电子版2025
- P6运行操作手册
- 考生所在单位考核意见填写模板
评论
0/150
提交评论