




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章自上而下分析,习题解答,已知一个文法.消除文法的左递归、提取公共左因子(4分).对得到的文法求First集合和Follow集合(4分).对得到的文法构造一个预测分析表;(4分).已知一个句子,给出分析过程。(3分),题目类型,4.1对文法GSSa|(T)TT,S|S(1)给出(a,(a,a)和(a,a),(a),a)的最左推导。(2)对文法G,进行改写,然后对每个非终结符写出不带回溯的递归子程序。(3)经改写后的文法是否是LL(1)的?给出它的预测分析表。(4)给出输入串#(a,a)#的分析过程,并说明该串是否为G的句子。,(1)对(a,(a,a)的最左推导为:S(T)(T,S)(S,S)(a,S)(a,(T)(a,(T,S)(a,(S,S)(a,(a,S)(a,(a,a),对(a,a),(a),a)的最左推导,S(T)(T,S)(S,S)(T),S)(T,S),S)(T,S,S),S)(S,S,S),S)(T),S,S),S)(T,S),S,S),S)(S,S),S,S),S)(a,S),S,S),S)(a,a),S,S),S)(a,a),S),S)(a,a),(T),S)(a,a),(S),S)(a,a),(a),S)(a,a),(a),a),Sa|(T)TT,S|S,文法GS,(2)改写文法为:0)Sa1)S2)S(T)3)TSN4)N,SN5)N,Sa|(T)TT,S|S,文法GS,procedureS;beginifsym=aorsym=thenabvanceelseifsym=(thenbeginadvance;T;ifsym=)thenadvance;elseerror;endelseerrorend;,procedureT;beginS;Nend,procedureNBeginifsym=,thenbeginadvance;s;Nendend,(2)改写文法为:0)Sa1)S2)S(T)3)TSN4)N,SN5)N,Sa|(T)TT,S|S,文法GS,非终结符FIRST集FOLLOW集Sa,(#,)Ta,()N,.),预测分析表,(3)对输入串(a,a)#的分析过程为:,栈剩余输入符所用产生式#S(a,a)#S(T)#)T(a,a)#)Ta,a)#TSN#)NSa,a)#Sa#)Naa,a)#)N,a)#N,SN#)NS,a)#)NSa)#Sa#)Naa)#)N)#N#)#,文法:,FIRST(E)=(,a,b,FIRST(E)=+,FIRST(T)=(,a,b,FIRST(T)=(,a,b,FIRST(F)=(,a,b,FIRST(F)=*,FIRST(P)=(,a,b,(1),FOLLOW(E)=#,)FOLLOW(E)=#,)FOLLOW(T)=+,),#FOLLOW(T)=+,),#FOLLOW(F)=(,a,b,+,),#FOLLOW(F)=(,a,b,+,),#FOLLOW(P)=*,(,a,b,+,),#,(2)考虑下列产生式:,FIRST(+E)FIRST()=+=FIRST(E)FOLLOW(E)=+#,)=FIRST(T)FIRST()=(,a,b,=FIRST(T)FOLLOW(T)=(,a,b,+,),#=FIRST(*F)FIRST()=*=FIRST(F)FOLLOW(F)=*(,a,b,+,),#=FIRST(E)FIRST(a)FIRST(b)FIRST()=,所以,该文法式LL(1)文法.,(3),(4),procedureE;beginifsym=(orsym=aorsym=borsym=thenbeginT;EendelseerrorendprocedureE;beginifsym=+thenbeginadvance;Eendelseifsym)andsym#thenerrorend,procedureT;beginifsym=(orsym=aorsym=borsym=thenbeginF;TendelseerrorendprocedureT;beginifsym=(orsym=aorsym=borsym=thenTelseifsym=*thenerrorend,procedureF;beginifsym=(orsym=aorsym=borsym=thenbeginP;FendelseerrorendprocedureF;beginifsym=*thenbeginadvance;Fendend,procedureP;beginifsym=aorsym=borsym=thenadvanceelseifsym=(thenbeginadvance;E;ifsym=)thenadvanceelseerrorendelseerrorend;,(1)是,满足三个条件。(2)不是,对于A不满足条件3。(3)不是,A、B均不满足条件3。(4)是,满足三个条件。,3,4.对下面文法Expr-ExprExpr(Expr)|VarExprTailExprTail-Expr|VaridVarTailVar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025人力资源管理聘用合同书范本
- 2025关于泉州市房地产代理合同(乙种本)
- 2025年甘肃省平凉华亭市山寨回族乡招聘行政村村文书模拟试卷(含答案详解)
- 2025广东农信社校园招聘考前自测高频考点模拟试题及答案详解(典优)
- 《2025年以自有车辆抵债合同》
- 2025江苏苏州市轨道交通集团有限公司专业化青年人才定岗特选人员考前自测高频考点模拟试题及答案详解(全优)
- 2025年三环集团留学生招聘考前自测高频考点模拟试题(含答案详解)
- 2025福建省梧凤文旅集团有限公司招聘1名工作人员模拟试卷及完整答案详解
- 2025辽宁工程技术大学招聘高层次人才216人考前自测高频考点模拟试题含答案详解
- 2025年辉南县补录1名乡镇、街道派驻消防文员模拟试卷及答案详解(新)
- 桩基质量管理制度
- 口腔颌面外科缝合技术要点
- 2025至2030中国军用导航仪器行业市场深度研究与战略咨询分析报告
- 2025年科创板开户试题及答案
- 西宁市供热管理暂行办法
- 中职导游课程课件
- 静脉血栓护理课件
- 精神科护理学练习题
- 造口患者叙事护理
- 中医学专业职业生涯规划书2300字数
- 绿色制药工艺节能策略-洞察阐释
评论
0/150
提交评论