编译原理期末复习资料完整版.docx
《编译原理期末复习资料完整版.docx》由会员分享,可在线阅读,更多相关《编译原理期末复习资料完整版.docx(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编译原理期末复习资料【题 1】1. a|b*aa|bba|b*画出状态转换图。IaIb 1,2,32,3,42,3,5 2,3,42,3,4,6,7,82,3,5 2,3,52,3,42,3,5,6,7,8 2,3,4,6,7,82,3,4,6,7,82,3,5,7,8 2,3,5,6,7,82,3,4,7,82,3,5,6,7,8 2,3,5,7,82,3,4,7,82,3,5,6,7,8 2,3,4,7,82,3,4,6,7,82,3,5,7,8IaIb123243325446575675746 新的状态转换图如下: 1A=1,2,3,B=4,5,6,7 Aa=2,4 2A=1,3,B=2
2、,C=4,5,6,7 Aa=2B,Ab=3,5 3A=1,B=2,C=3,D=4,5,6,7单元素可以不用看,必有,古先看D Da=4,7D,Db=5,6D,Aa=2B,Ab=3C,Ba=4D,Bb=3C,Ca=2B,Cb=5C,那么有ab ABC BDCCBDDDD2. a*|b*bba*的状态转换图。IaIb 1,2,3,42,43,4,5,6,8 2,42,45,6,8 3,4,5,6,8-3,4,5,6,7,8 5,6,8-7 3,4,5,6,7,86,83,4,5,6,7,8 76,8- 6,8-7IaIb1232243-54-657567-7-6新的状态转换图如下:化简:用终结状态
3、及非终结状态,然后输出状态一样分一类。1A=1,2,6,B=3,4,5,7 Aa=2 2A=1,2,B=6,C=3,4,7,D=5 Cb=5,6 只要有一个不属于任何一个集合,就不行3A=1,2,B=6,C=3,D=4,7,E=5 Ab=3,4 4 A=1,B=2,C=6,D=3,E=4,7,F=5 Aa=2B,Ab=3D,Ba=2B,Bb=4E,Ca=7E,Db=5F,Eb=6C,Fa=7E,Fb=5Fab ABD BBECE-D-FE-CFEF考前须知:学问要点:u 正那么表达式:;是最左边一个字母确定是,其余字母为的随意组合,不包括。a和假设干个a包括0的情形后跟一个b构成的符号串集合a
4、和a后跟假设干个包括0的情形b构成的符号串集合u 状态转换图有穷状态自动机: 【题 2】中语法变量的FOLLOW集。解答:1求表达式文法的语法符号的FIRST集:FIRST(F)=, idFIRST(T)=FIRST(F)=, id FIRST(E)=FIRST(T)=, id FIRST(E)=+,FIRST(T)=*, FIRST(+)=+, FIRST(*)=*FIRST()=FIRST()=FIRST(id)=id2求表达式文法的语法变量的 FOLLOW集:FOLLOW(E) = #, ) FOLLOW(E)= FOLLOW( E ) = #, ) FOLLOW(T) = FIRST(
5、E)-FOLLOW(E)FOLLOW(E)= +,),#FOLLOW(T)= FOLLOW(T)= +,),#FOLLOW(F) = FIRST(T)FOLLOW(T)FOLLOW(T) =*,+,),# 6学问点First集合的求法: First集合最终是对产生式右部的字符串而言的,但其关键是求出非终结符的First集合,由于终结符的First集合就是它自己,所以求出非终结符的First集合后,就可很直观地得到每个字符串的First集合1. 干脆收取:对形如U-a的产生式其中a是终结符,把a收入到First(U)中2. 反复传送:对形入U-P1P2P3Pn的产生式其中P是非终结符,应先把Fi
6、rst(P1)中的全部内容传送到First(U)中,假设P1中有,把First(P2)中的内容传送到First(U)中,类推直到Pi中无。Follow集合的求法: Follow集合是针对非终结符而言的,Follow(U)所表达的是句型中非终结符U全部可能的后随终结符号的集合,特殊地,“$是识别符号的后随符,先干脆参与到S中。1. 干脆收取:留意产生式右部的每一个形如“Ua的组合,把a干脆收入到Follow(U)中。2. 干脆收取:对形如“UP(P是非终结符)的组合,把First(P)中非收入到Follow(U)中。3. 反复传送:对形如UaP的产生式其中P是非终结符或U-aPQ(P,Q为非终结
7、符且Q中含),应把Follow(U)中的全部内容传送到Follow(P)中。例 文法:SABc Aa| Bb|First集合求法:能由非终结符号推出的全部的开头符号或可能的,但要求这个开头符号是终结符号。如此题A可以推导出a和,所以FIRSTA=a,;同理 FIRSTB=b,;S可以推导出aBc,还可以推导出bc,还可以推导出c,所以FIRST(S=a,b,cFollow集合的求法:紧跟随其后面的终结符号或。但文法的识别符号包含,在求的时候还要考虑到。 详细做法是把全部包含你要求的符号的产生式都找出来,再看哪个有用。 FollowS=如求A的,产生式:SABc Aa| ,但只有SABc 有用。
8、跟随在A后面的终结符号是FIRSTB=b,当FIRSTB的元素为时,跟随在A后的符号就是c,所以 FollowA=b,c同理FollowB=c2.对下面的文法 G : (1)计算这个文法的每个非终结符的 FIRST 集和 FOLLOW 集。(2) 证明这个方法是 LL(1) 的。(3) 构造它的意料分析表。解:1计算这个文法的每个非终结符的FIRST集和FOLLOW集。 FIRST集合有: FIRST(E)=FIRST(T)=FIRST(F)=FIRST(P)=(,a,b,; FIRST(E)=+, FIRST(T)=FIRST(F)=FIRST(P)=(,a,b,; FIRST(T)=FIR
9、ST(T)=(,a,b,; FIRST(F)=FIRST(P)=(,a,b,; FIRST(F)=FIRST(P)=*,; FIRST(P)=(,a,b,; FOLLOW集合有: FOLLOW(E)=),#; FOLLOW(E)=FOLLOW(E)=),#; FOLLOW(T)=FIRST(E)FOLLOW(E)=+,),#;/不包含 FOLLOW(T)=FOLLOW(T)=FIRST(E)FOLLOW(E)=+,),#; FOLLOW(F)=FIRST(T)FOLLOW(T)=(,a,b,+,),#;/不包含 FOLLOW(F)=FOLLOW(F)=FIRST(T)FOLLOW(T)=(,a
10、,b,+,),#; FOLLOW(P)=FIRST(F)FOLLOW(F)=*,(,a,b,+,),#;/不包含 (2)证明这个方法是LL(1)的。 各产生式的SELECT集合有: SELECT(E-TE)=FIRST(T)=(,a,b,; SELECT(E-+E)=+; SELECT(E-)=FOLLOW(E/)=),# SELECT(T-FT)=FIRST(F)=(,a,b,; SELECT(T-T)=FIRST(T)=(,a,b,; SELECT(T-)=FOLLOW(T/)=+,),#; SELECT(F-PF)=FIRST(P)=(,a,b,; SELECT(F-*F)=*; SEL
11、ECT(F-)=FOLLOW(F)=(,a,b,+,),#; SELECT(P-(E)=( SELECT(P-a)=a SELECT(P-b)=b SELECT(P-)= 可见,一样左部产生式的SELECT集的交集均为空,所以文法GE是LL(1)文法。 (3)构造它的意料分析表。 文法GE的意料分析表如下: 【题 3】考虑下面的文法:(1) 求出全部语法变量的FIRSTOP集合和LASTOP集合。(2) 构造文法的算符优先关系表,并推断是否为算符优先文法。(3) 计算文法的算符优先函数。(4) 给出表达式和id*(id+id)的算符优先分析过程。解答:(1) 全部语法变量的FIRSTOP集合和
12、LASTOP集合如下:2文法的算符优先关系表算符关 系算 符+-*/()id+-*/id因为文法中随意两个终结符之间只存在一种关系,因此该文法为算符优先文法。(3) 文法的算符优先函数优先函数算符+-*/id#栈内优先函数22440440栈外优先函数11335050(4) 表达式的算符优先分析过程步骤栈输入串优先关系动作1#+#2#+#移进3#F+#用归约4#F+#移进+5#F+#移进6#F+F#+#用归约7#E#+#用归约表达式id*(id+id)的算符优先分析过程步骤栈S优先关系当前输入字符R输入字符串0#id*(id+id)#1#id*(id+id)#2#N*(id+id)#3#N*id
13、+id)#4#N*(id+id)#5#N*(id+id)#6#N*(N+id)#7#N*(N+id)#8#N*(N+id)#9#N*(N+N)#10#N*(N)#11#N*(N)#12#N*N#13#N停顿#2.文法 GS 为: S-a|(T) T- T,S|S (1) 计算 GS 的 FIRSTVT 和 LASTVT 。 (2) 构造 GS 的算符优先关系表并说明 GS 是否为算符优先文法。 (3) 计算 GS 的优先函数。 (4) 给出输入串 (a,a)# 的算符优先分析过程。解:1各符号的FIRSTVT和LASTVT:2算符优先关系表: 因为文法中随意两个终结符之间只存在一种关系,因此该
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 期末 复习资料 完整版
限制150内