收藏 分享(赏)

编译原理(清华大学 第2版)课后习题答案.doc

上传人:精品资料 文档编号:10154657 上传时间:2019-10-15 格式:DOC 页数:36 大小:941.50KB
下载 相关 举报
编译原理(清华大学 第2版)课后习题答案.doc_第1页
第1页 / 共36页
编译原理(清华大学 第2版)课后习题答案.doc_第2页
第2页 / 共36页
编译原理(清华大学 第2版)课后习题答案.doc_第3页
第3页 / 共36页
编译原理(清华大学 第2版)课后习题答案.doc_第4页
第4页 / 共36页
编译原理(清华大学 第2版)课后习题答案.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、1第三章N=D= 0,1,2,3,4,5,6,7,8,9N=ND=NDDL=a |a(0|1|3|9)n 且 n=1(0|1|3|9)n 且 n=1ab,anbn n=1第 6 题.(1) = = = i(2) = = = () = ()= ()=(i)(3) = = * = * =i*i(4) = + = + = *+= *+ = *+ = i*i+i(5) = +=+ = +=i+= i+ = i+() = i+(+)= i+(+)= i+(i+i)(6) = + = + = + = i+= i+* = i+* = i+i*i第 7 题 * ii +i2+i i * i第 9 题语法树ss

2、s*ss+aaa推导: S=SS*=SS+S*=aa+a*11. 推导:E=E+T=E+T*F语法树: EE+TTF*短语: T*F E+T*F直接短语: T*F句柄: T*F12 3ABS = aBS =aSBBS = aBBS = abBS = abbS = abbAa = abbaa最右推导:S = ABS = ABAa = ABaa = ASBBaa= ASBbaa = ASbbaa = Abbaa = a1b1b2a2a3(2) 文法:S ABSS AaS A aB b (3) 短语:a1 , b1 , b2, a2 , , bb , aa , abbaa, 直接短语: a1 , b

3、1 , b2, a2 , , 句柄:a114 (1)S ABA aAb | B aBb | (2)S 1S0 S AA 0A1 |第四章1. 1. 构造下列正规式相应的 DFA(1) 1(0|1)*101NFA 0 1 2 31 1 0 10,1 4(2) 1(1010*|1(010)*1)*0NFA420 00 400001 01110 1010(3)NFA(4)NFA0 1b3 6a2bb4ab5b2.解:构造 DFA 矩阵表示0 1X0 Z XZ * X,Z YX,Z * X,Z X,YY X,Y0 1a3 4ba,b2aab5X,Y X,Y,Z XX,Y,Z * X,Y,Z X,Y其中

4、 0 表示初态,*表示终态用 0,1,2,3,4,5 分别代替X Z X,Z Y X,Y X,Y,Z得 DFA 状态图为: 350 211 400100110103解:构造 DFA 矩阵表示构造 DFA 的矩阵表示0 1S0 V,Q Q,UV,Q Z,V Q,UQ,U V Q,U,ZZ,V* Z ZV ZQ,U,Z* V,Z Q,U,ZZ Z Z其中 0 表示初态,*表示终态替换后的矩阵0 100 1 21 3 22 4 53* 6 64 65* 3 56 6 6构造 DFA 状态转换图(略)4 (1)解构造状态转换矩阵: 6a b00* 0,1 10,1* 0,1 11 0转换为a b0*

5、1 21* 1 22 02,3 0,12,3a=0,32,3,0,10,1a=1,1 0,1b=2,2(2)解:首先把 M 的状态分为两组:终态组0,和非终态组1,2,3,4,5 此时 G=( 0,1,2,3,4,5 )1,2,3,4,5a=1,3,0,51,2,3,4,5b=4,3,2,5由于4 a=0 1,2,3,5a=1,3,5因此应将1,2,3,4,5划分为4,1,2,3,5G=(041,2,3,5)1,2,3,5a=1,3,51,2,3,5b=4,3,2因为1,5 b=4 23b=2,3所以应将1,2,3,5划分为1,52,3G=(01,52,34)1,5a=1,5 1,5b=4 所

6、以1,5 不用再划分2,3a=1,3 2,3b=3,2因为 2 a=1 3a=3 所以2,3应划分为23所以化简后为 G( 0,2,3,4,1,5)7.去除多余产生式后,构造 NFA 如下7S AB DQ Zabbab bba bab确定化,构造 DFA 矩阵a bS A QA A B,ZB,Z Q DQ Q D,ZD A BD,Z A DB Q D变换为a b00 1 31 1 22* 3 43 3 54 1 65* 1 46 3 4化简:G=(0,1,3,4,6),(2,5)0,1,3,4,6a=1,30,1,3,4,6b=2,3,4,5,6所以将0,1,3,4,6划分为 0,4,61,3

7、G=(0,4,6),(1,3),(2,5)0,4,6b=3,6,4 所以 划分为0,4,6G=(0),(4,6),(1,3),(2,5)不能再划分,分别用 0,4,1,2 代表各状态,构造 DFA 状态转换图如下;80 1 4a,baa bbab28代入得S = 0(1S|1)| 1(0S|0)= 01(S|) | 10(S|)= (01|10)(S|)= (01|10)S | (01|10)= (01|10)*(01|10)构造 NFAS AB Z0101 10由 NFA 可得正规式为(01|10) *(01|10)=(01|10)+9.状态转换函数不是全函数,增加死状态 8,G=(1,2,

8、3,4,5,8),(6,7)(1,2,3,4,5,8)a=(3,4,8) (3,4)应分出(1,2,3,4,5,8)b=(2,6,7,8) (1,2,3,4,5,8)c=(3,8)(1,2,3,4,5,8)d=(3,8)所以应将(1,2,3,4,5,8)分为(1,2,5,8), (3,4)G=(1,2,5,8),(3,4),(6,7)(1,2,5,8)a=(3,4,8) 8 应分出(1,2,5,8)b=(2,8) (1,2,5,8)c=(8) (1,2,5,8)d=(8) G=(1,2,5),(8),(3,4),(6,7)(1,2,5)a=(3,4,8) 5 应分出G=(1,2), (3,4)

9、,5, (6,7) ,(8) 去掉死状态 8,9最终结果为 (1,2) (3,4) 5,(6,7) 以 1,3,5,6 代替,最简 DFA 为1 3acb bda5 6b正规式:b *a(da|c)*bb*第五章1. S-a | |( T )T - T , S | S(a,(a,a)S = ( T ) = ( T , S ) = ( S , S ) = ( a , S) = ( a, ( T ) =(a , ( T , S ) ) = (a , ( S , S ) = (a , ( a , a ) )S=(T) = (T,S) = (S,S) = ( ( T ) , S ) = ( ( T ,

10、 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

11、) ) , S ) = ( ( ( a , a ) , , ( a ) ) , S ) = ( ( ( a , a ) , , ( a ) ) , a )S-a | |( T )T - T , ST - S消除直接左递归:S-a | |( T )T - S TT - , S T | SELECT ( S-a) = aSELECT ( S-) = SELECT ( S-( T ) ) = ( SELECT ( T - S T) = a , , ( SELECT ( T - , S T ) = , SELECT ( T -) = FOLLOW ( T ) = FOLLOW ( T ) = ) 构造

12、预测分析表a ( ) , #S - a - - ( T )T - S T - S T - S T10T - - , S T分析符号串 ( a , a )#分析栈 剩余输入串 所用产生式 #S ( a , a) # S - ( T )# ) T ( ( a , a) # ( 匹配 # ) T a , a ) # T - S T# ) T S a , a ) # S - a# ) T a a , a ) # a 匹配# ) T ,a) # T - , S T# ) T S , , a ) # , 匹配# ) T S a ) # S-a# ) T a a ) # a 匹配# ) T ) # T -#

13、 ) ) # )匹配# # 接受2.E-TE E-+E E- T-FT T-T T- F-PF F-*F F- P-(E) P-a P-b P-非终结符名 是否 FIRST 集 FOLLOW 集E 否 (, a,b, #, ) E 是 +, #, ) T 否 (, a,b, , #, )T 是 , (,a,b , , #, )F 否 (, a,b, (, a,b, ,#, )F 是 *, (, a,b, ,#, )P 否 (, a,b, *, (,a,b, ,#, )SELECT(E TE)=FIRST(TE)=FIRST(T)= (,a,b,)SELECT(E +E)=+SELECT(E )

14、=FOLLOW(E)= #,)SELECT(T FT)=FIRST(F)= (,a,b,SELECT(T T)=FIRST(T)= (,a,b,)SELECT(T)=FOLLOW(T)= ,#,)SELECT(F PF)=FIRST(F)= (,a,b,SELECT(F*F)=*SELECT(F )=FOLLOW(F)= (,a,b,#, )3. S-MH S-a H-Lso H- K-dML K- L-eHf M-K M-bLMFIRST ( S ) =FIRST(MH)= FIRST ( M ) FIRST ( H ) a= a, d , b , e ,11FIRST( H ) = FIR

15、ST ( L ) = e , FIRST( K ) = d , FIRST( M ) = FIRST ( K ) b = d , b ,FOLLOW ( S ) = # , o FOLLOW ( H ) = FOLLOW ( S ) f = f , # , o FOLLOW ( K ) = FOLLOW ( M ) = e , # , o FOLLOW ( L ) = FIRST ( S ) o FOLLOW ( K ) FIRST ( M ) FOLLOW ( M )= a, d , b , e , # , o FOLLOW ( M ) = FIRST ( H ) FOLLOW ( S )

16、FIRST ( L ) = e , # , o SELECT ( S- M H) = ( FIRST ( M H) ) FOLLOW ( S ) = ( FIRST( M ) FIRST ( H ) ) FOLLOW ( S ) = d , b , e , # , o SELECT ( S- a ) = a SELECT ( H-L S o ) = FIRST(L S o) = e SELECT ( H - ) = FOLLOW ( H ) = f , # , o SELECT ( K- d M L ) = d SELECT ( K- ) = FOLLOW ( K ) = e , # , o

17、SELECT ( L- e H f ) = e SELECT ( M-K ) = ( FIRST( K ) ) FOLLOW ( M ) = d, e , # , o SELECT ( M - b L M )= b 构造 LL( 1 ) 分析表a b e d f o #S - a - M H - M H - M H - M H - M HH -L S o - - -K - - d M L - -L - e H fM - b L M -K -K -K -K4 . 文法含有左公因式,变为S-C $ b, a C- b A b C- a B a A - b A A b A- a A a A- $ ,

18、 a, b A- C a , b B-a B B a B - b B b B- $ , a , b B- C a, b 5. - S A B C D E -F S-begin A end S-begin A end begin A- B A- B A a , if A- A ; B A- ; B A ; A- end B- C B- C a B- D B- D if C- a C- a a D- E D- E D if D- E else B D- else B else D- ; , end E- FC E- FC if F- if b then F- if b then if 非终结符是否

19、为空S否 A否 A是 B否 C否 D否 D是 E否 F否FIRST(S) = begin FIRST(A) = FIRST(B) FIRST(A) = a , if , ; , FIRST(A) = ; , FIRST(B) = FIRST(C) FIRST(D) = a , if FIRST(C) = aFIRST(D) = FIRST(E)= if FIRSR(D) = else , FIRST(E) = FIRST(F) = if FIRST(F) = if FOLLOW(S) = # FOLLOW(A) = endFOLLOW(A) = end FOLLOW(B) = ; , end

20、FOLLOW (C) = ; , end , else FOLLOW(D) = ; , end FOLLOW( D ) = ; , end FOLLOW(E) = else , ; end FOLLOW(F) = a S A A B C D D E F if then else begin end a b ; if then else begin end a b ; #S -begin A endA - B A - B A13A - - ; B AB - D - CC - aD - E DD - else B D- -E -FC F -if b then6. 1.(1) S - A | B(2

21、) A - aA|a(3)B - bB |b提取 (2) , (3)左公因子(1) S - A | B(2) A - aA(3) A- A|(4) B - bB(5) B- B |2.(1) S-AB(2) A-Ba|(3) B-Db|D(4) D- d|提取(3)左公因子(1) S-AB(2) A-Ba|(3) B-DB(4) B-b|(5) D- d|3.(1) S-aAaB | bAbB(2) A- S| db(3) B-bB|a4(1) S-i|(E)(2) E-E+S|E-S|S提取(2)左公因子(1) S-i|(E)(2) E-SE(3) E-+SE|-SE |5(1) S-SaA

22、 | bB14(2) A-aB|c(3) B-Bb|d消除(1)(3)直接左递归(1) S-bBS(2) S-aAS|(3) A-aB | c(4) B - dB(5) B-bB|6.(1) M-MaH | H(2) H-b(M) | (M) |b消除(1)直接左递归,提取(2)左公因子(1) M- HM(2) M- aHM |(3) H-bH | ( M )(4) H-(M) |7. (1) 1) A-baB 2) A-3) B-Abb4) B-a将 1) 、2)式代入 3)式1) A-baB2) A-3) B-baBbb4) B-bb5) B-a提取 3) 、4)式左公因子1) A-baB

23、2) A-3) B-bB4) B-aBbb | b5) B-a(3)1) S-Aa2) S-b3) A-SB4) B-ab将 3)式代入 1)式1) S-SBa2) S-b3) A-SB4) B-ab15消除 1)式直接左递归1) S-bS2) S-BaS |3) S-b4) A-SB5) B-ab删除多余产生式 4)1) S-bS2) S-BaS |3) S-b4) B-ab(5)1) S-Ab2) S-Ba3) A-aA4) A-a5) B-a提取 3) 4)左公因子1) S-Ab2) S-Ba3) A-aA4) A- A |5) B-a将 3)代入 1) 5)代入 21) S-aAb2)

24、 S-aa3) A-aA4) A- A |5) B-a提取 1) 2) 左公因子1) S- aS2) S-Ab | a3) A-aA4) A- A |5) B-a删除多余产生式 5)1) S- aS2) S-Ab | a3) A-aA4) A- A |A A S S将 3)代入 4)1) S- aS2) S-Ab | a3) A-aA 164) A- aA |将 4)代入 2)1) S- aS2) S-aAb 3) S-a 4) S-b5) A-aA 6) A- aA |对 2)3)提取左公因子1) S-aS2) S-aS3) S-Ab|4) S-b5) A-aA 6) A- aA |删除多余

25、产生式 5)1) S-aS2) S-aS3) S-Ab|4) S-b5) A- aA |第六章1S a | | ( T )T T , S | S解:(1) 增加辅助产生式 SS求 FIRSTVT 集FIRSTVT(S ) #FIRSTVT(S) a ( a ( FIRSTVT (T) , FIRSTVT( S ) = , a ( 求 LASTVT 集LASTVT(S ) # LASTVT(S) a )LASTVT (T) , a )(2)算符优先关系表a ( ) , #a ( , # , a)# 规约(T ) # 规约(T,T ) # 规约(T = ) # 移进(T) 规约T = 接受4. 扩

26、展后的文法S#S# SS;G SG GG(T) GH Ha H(S)TT+S TS(1)FIRSTVT(S)=;FIRSTVT(G) = ; , a , ( FIRSTVT(G)= ( FIRSTVT(H) = a , ( FIRSTCT(H)=a , ( FIRSTVT(T) = + FIRSTVT(S) = + , ; , a , ( LASTVT(S) = ; LASTVT(G) = ; , a , )LASTVT(G) = ) LASTVT(H) = a , )LASTVT(H) = a, )LASTVT(T) = + LASTVT(S) = + , ; , a , ) 构造算符优先关

27、系表; ( ) a + #18; ( a + # a;(aa);(aa)(aa)(aa)aa)a)a)a)移进规约移进移进移进规约移进移进规约规约移进规约规约接受分析 a;(aa)栈 优先关系 当前符号 剩余输入串 移进或规约(a(T(T(Ta(TT(T(T)T(aa)aa)a)a)a)移进移进规约移进移进规约规约移进规约接受(4)19不能用最右推导推导出上面的两个句子。第七章1、已知文法:A aAd|aAb|判断该文法是否是 SLR(1)文法,若是构造相应分析表,并对输入串 ab#给出分析过程。解:(0) A A(1) A aAd(2) A aAb(3) A 构造该文法的活前缀 DFA:由上

28、图可知该文法是 SLR(1)文法。构造 SLR(1)的分析表:ACTION GOTO状态a d b # A0 S2 R3 R3 R3 11 acc2 S2 R3 R3 R3 33 S4 S54 R1 R1 R15 R2 R2 R2输入串 ab#的分析过程:步骤 状态栈 符号栈 输入串 ACTION GOTO1 0 # ab# S22 02 #a b# R3 33 023 #aA b# S54 0235 #aAb # R2 15 01 #A # acc3、考虑文法:S AS|b ASA|a(1) 列出这个文法的所有 LR(0)项目(2) 按(1)列出的项目构造识别这个文法活前缀的 NFA,把这个

29、 NFA 确定化为 DFA,说明这个 DFA的所有状态全体构成这个文法的 LR(0)规范族。I0:A AA aAdA aAbA I2:A aAdA aAbA aAdA aAbA a I3:A aAdA aAbA I4:A aAdI5:A aAbdbI1:A AAFollow(A)a=a20(3) 这个文法是 SLR 的吗?若是,构造出它的 SLR 分析表。(4) 这个文法是 LALR 或 LR(1)的吗?解:(0)SS (1)SAS (2)Sb (3)ASA (4)Aa(1)列出所有 LR(0)项目:SS Sb Aa S S Sb AaS AS ASAS AS ASAS AS ASA(3)构造

30、该文法的活前缀 NFA:I0:SSS ASS bA SAA aI1:S SA SAA SAA aS ASS bS I3:A SAS ASS ASS bA SAA aI5:S ASA SAA SAA aS ASS bI2:S ASS ASS bA SAA aI4:A SAA SAA aS ASS bI6:S bI7:A aAASA ASASA SSbabbbbaaaaab由上可知:I 1 I3 I5 中存在着移进和归约冲突在 I1 中含项目:S S 归约项 Follow(S)=#A a 移进项 Follow(S)a=S b 移进项 Follow(S)b=在 I3 中含项目:A SA 归约项 Fo

31、llow(A)=a,bS b 移进项 Follow(A) bA a 移进项 Follow(A) a在 I5 中含项目:S AS 归约项 Follow(S)=#,a,bA a 移进项 Follow(S) aS b 移进项 Follow(S) b由此可知,I3、I5 的移进与归约冲突不能解决,所以这个文法不是 SLR(1)文法。21(4)做 LR(1)项目集规范族由上可知该文法不是 LR(1)文法,也不是 LALR(1)文法。5、一个类 ALGOL 的文法如下:;begin d;dS endS; begin试构造其 LR(0)分析表。解:设=A =B =CI1:S S ,# A SA ,a/bA

32、SA ,a/bA a ,a/bS AS ,a/bS b ,a/bI0:SS ,#S AS ,a/b/#S b ,a/b/#A SA ,a/bA a ,a/bI2:S AS ,a/b/#S AS ,a/b/#S b ,a/b/#A SA ,a/bA a ,a/bI3:S b ,a/b/#I4:A a ,a/b/#I5:(I 1-A-)A SA ,a/bS AS ,a/bS AS ,a/bS b ,a/bA SA ,a/bA a ,a/bI6:(I 1-S-)A SA ,a/bA SA ,a/bA a ,a/bS AS ,a/bS b ,a/bI7:(I 2-S-)S AS ,a/b/#A SA

33、,a/b/#A SA ,a/bA a ,a/bS AS ,a/bS b ,a/b22=D =EAB AC BD;E Dbegin d DD;d Es end Es;E Cbegin E(0)A A (1) AB (2)AC (3)BD;E (4) Dbegin d (5) DD;d (6) Es end (7) Es;E (8) Cbegin E构造该文法的活前缀 DFA:I0:AA ABACBD;ECbegin EDbegin dDD;dI4:BD;EDD;dI5:Cbegin EDbegin dES endES;EI13:ES;EESendES;EI14:ES;EI11:DD; dI10:

34、BD; EI1:A AI2:ABI3:AC I8:Cbegin EI9:Dbegin dADbeginB CE dE;dSS;EI112:ES endend构造 LR(0)分析表:ACTION GOTO状态 begin ; d S end # A B C D E0 S5 1 2 3 41 acc2 R1 R1 R1 R1 R1 R13 R2 R2 R2 R2 R2 R24 S65 S9 S7 86 S11 S7 10I6:BD;EDD;dES endES;ESI7:ESendES;E237 S13 S128 R8 R8 R8 R8 R8 R89 R4 R4 R4 R4 R4 R410 R3 R

35、3 R3 R3 R3 R311 R5 R5 R5 R5 R5 R512 R6 R6 R6 R6 R6 R613 S7 1414 R7 R7 R7 R7 R7r R76、文法 G=(U,T,S,a,b,c,d,e,P,S)其中 P 为:SUTa|Tb TS|Sc|d UUS|e(1) 判断 G 是 LR(0) ,SLR(1) ,LALR(1)还是 LR(1) ,说明理由。(2) 构造相应的分析表。解:(0)SS (1)SUTa (2)STb (3)TS (4) TSc (5)Td(6)UUS (7)Ue首先做 LR(0)分析:I0:SS S UTa STb UUS Ue TS TSc TdI1:

36、SS TSc(I1 产生移进规约冲突,但 Follow(S ) c= 可以用 SLR(1)解决)I2: SUTa UUS SUTa STb UUS Ue TS TSc TdI3: ST.bI4: UeI5:TdI6:TScI7:SUTa STbI8:UUS TS TSc产生移进规约喝规约规约冲突 Follow(U)=d,e Follow(T)=a,b24可以用 SLR(1)的方法解决I9: SUTa I10: STb所以该文法是 SLR(1)文法,也是 LALR(1)文法,LR(1)文法。构造 SLR(1)分析表:ACTION GOTO状态a b c d e # S U T0 S12 S11

37、1 2 31 S6 acc2 S5 S4 8 2 73 S104 R7 R75 R5 R56 R4 R47 S9 S108 R3 R3 S6 R6 R69 R1 R1 R1 R110 R2 R2 R2 R27证明下面文法不是 LR(0)但是 SLR(1) 。SA AAb|bBa BaAc|a|aAb证明:(0)S S (1)SA (2)AAb (3)AbBa (4)BaAc(5) Ba (6)BaAb构造该文法的活前缀 DFA:25在 I2 项目集中含有:SA 归约项 Follow(S)=#AAb 移进项 Follow(S)b=在 I4 项目集中含有:Ba 归约项 Follow(B)=aAbB

38、a 移进项 Follow(B)b=在 I9 项目集中有 BaAb 规约项 Follow(B)=aAAb 规约项 Follow(A)=b,c,# Follow(B) Follow(A)= 文法的冲突项可以用 SLR(1)文法来解决,所以该文法是 SLR(1)文法,不是 LR(0)文法。11、设文法 GS为:SAS| AaA|b(1) 证明 GS是 LR(1)文法;(2) 构造它的 LR(1)分析表;(3) 给出输入符号串 abab#的分析过程。解:(0)SS (1)SAS (2) S (3)AaA (4)Ab证明:构造该文法的活前缀 DFA:SI0:SS SAAAbAbBaI2:SAAAbI3:

39、AbBa BaAcBaBaAbI1:S SI4:BaAcBaBaAbAAbAbBaI7:AAbI5:AbBaI6:BaAcBaAbAAbI10:BaAcI9:BaAbAAbI8:AbBaS AbbB aabAcb26在该文法 I0 ,I 2 中出现了归约移进冲突,由于归约项目的搜索符集合与移进项目的待移进符号不相交,所以在 I0 ,I 2 中当面临输入符为#时归约,为 a 或 b 时移进。所以该文法是 LR(1)文法。构造它的 LR(1)分析表:ACTION GOTO状态a b # S A0 S3 S4 R2 1 21 acc2 S3 S4 R2 5 23 S3 S4 64 R4 R4 R45

40、 R16 R3 R3 R3构造输入符号串 abab#的分析过程:步骤 状态栈 符号栈 输入串 ACTION GOTO1 0 # abab# S32 03 #a bab# S43 034 #ab ab# R4 64 036 #aA ab# R3 25 02 #A ab# S36 023 #Aa b# S47 0234 #Aab # R4 68 0236 #AaA # R3 29 022 #AA # R2 510 0225 #AAS # R1 511 025 #AS # R1 1I0:SS ,#SAS ,#S ,#AaA ,a/b/#Ab , a/b/#I2:SAS ,#SAS ,#S ,#AaA

41、 ,a/b/#Ab , a/b/#I4:Ab , a/b/#I6:Aa A ,a/b/#I5:SAS ,#baAaSAbAabI1:S S ,#I3:Aa A ,a/b/#AaA ,a/b/#Ab , a/b/#2712 01 #S # acc16、给定文法:Sdo S or S|do S|S;S|act(1) 构造识别该文法活前缀的 DFA。(2) 该文法是 LR(0)吗?是 SLR(1)吗?说明理由。(3) 若对一些终结符的优先级以及算符的结合规则规定如下:a) or 优先性大于 do;b) ;服从左结合;c) ;优先性大于 do;d) ;优先性大于 or;请构造该文法的 LR 分析表。解:(0)SS (1)Sdo S or S (2)Sdo S (3)SS;S (4)Sact构造该文法的活前缀 DFA:I0:SSSdo S or SSdo SSS;SSactI8:SactI2:Sdo S or SSdo

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报