资源描述:
《计算机网络体系结构作业参考答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、作业参考答案(meter分享)第二章高级语言及其语法描述6、(1)L(G6)={0,1,2,......,9}+(2)最左推导:N=>ND=>NDD=>NDDD=>DDDD=>0DDD=>01DD=>012D=>0127N=>ND=>DD=>3D=>34N=>ND=>NDD=>DDD=>5DD=>56D=>568最右推导:N=>ND=>N7=>ND7=>N27=>ND27=>N127=>D127=>0127N=>ND=>N4=>D4=>34N=>ND=>N8=>ND8=>N68=>D68=>5687、G:S→ABC
2、AC
3、CA→1
4、2
5、3
6、4
7、5
8、6
9、7
10、8
11、
12、9B→BB
13、0
14、1
15、2
16、3
17、4
18、5
19、6
20、7
21、8
22、9C→1
23、3
24、5
25、7
26、98、(1)最左推导:E=>E+T=>T+T=>F+T=>i+T=>i+T*F=>i+F*F=>i+i*F=>i+i*iE=>T=>T*F=>F*F=>i*F=>i*(E)=>i*(E+T)=>i*(T+T)=>i*(F+T)=>i*(i+T)=>i*(i+F)=>i*(i+i)最右推导:E=>E+T=>E+T*F=>E+T*i=>E+F*i=>E+i*i=>T+i*i=>F+i*i=>i+i*iE=>T=>T*F=>T*(E)=>T*(E+T)=>T*(E+F)=>T*(E+i)=>T
27、*(T+i)=>T*(F+i)=>T*(i+i)=>F*(i+i)=>i*(i+i)E-TTFiEE-TFiFiE+TTFiEE+TFiFiE+TFiET*FiFiT(2)9、证明:该文法存在一个句子iiiei有两棵不同语法分析树,如下所示,因此该文法是二义的。SSeiSiSiiSeiSiSiSiG1:S→ABA→aAb
28、abB→cB
29、εG2:S→ABA→aA
30、εB→bBc
31、bcG4:S→1S0
32、AA→0A1
33、εG3:S→AAA→aAb
34、ε11、15第3章词法分析第4章语法分析——自上而下分析1、S→a
35、^
36、(T)T→T,S
37、S(1)消除左递归S→a
38、^
39、(
40、T)T→ST’T’→,ST’
41、ε递归下降子程序:voidS(){if(sym==’a’)advanced();elseif(sym==’^’)advanced();elseif(sym==’(‘){advanced();T();if(sym==’)’)advanced();elseerror();}elseerror();}voidT(){S();T’();}voidT’(){if(sym==’,’){advanced();S();T’();}elseif(syminfollow(T’))elseerror();}(2)FIRSTFOLLOWS{a,^,(}
42、{#,,,)}T{a,^,(}{)}T’{,,ε}{)}该文法是LL(1)的:方法一(利用概念):a.不含左递归;b.候选终结首符集没有交集;c.ε∈first(T’),follow(T’)∩first(T’)={}方法二(指出预测分析表没有多重入口)预测分析表如下:a^(),#SS→aS→^S→(T)TT→ST’T→ST’T→ST’T’T’→εT’→,ST’步骤分析栈输入串所用产生式(略)1#S(a,a)#S→(T)2#)T((a,a)#(匹配成功153#)Ta,a)#T→ST’4#)T’Sa,a)#S→a5#)T’aa,a)#a匹配成功6#)T’,a)#
43、T’→,ST’7#)T’S,,a)#,匹配成功8#)T’Sa)#S→a9#)T’aa)#a匹配成功10#)T’)#T’→ε11#))#)匹配成功12##匹配成功,结束2、文法:E→TE’E’→+E
44、εT→FT’T’→T
45、εF→PF’F’→*F’
46、εP→(E)
47、a
48、b
49、^(1)求每个非终结符号的FIRST和FOLLOW集合:FIRSTFOLLOWE{(,a,b,^}{#,)}E’{+,ε}{#,)}T{(,a,b,^}{+,#,)}T’{ε,(,a,b,^}{+,#,)}F{(,a,b,^}{(,a,b,^,+,#,)}F’{*,ε}{(,a,b,^,+,#,
50、)}P{(,a,b,^}{*,(,a,b,^,+,#,)}(2)略(3)构造预测分析表+*()^ab#EE→TE’E→TE’E→TE’E→TE’E’E’→+EE’→εE’→εTT→FT’T→FT’T→FT’T→FT’T’T’→εT’→TT’→εT’→TT’→TT’→TT’→εFF→PF’F→PF’F→PF’F→PF’F’F’→εF’→*F’F’→εF’→εF’→εF’→εF’→εF’→εPP→(E)P→^P→aP→b(4)步骤分析栈输入串所用产生式(略)1#Ea+b*b#E→TE’152#E’Ta+b*b#T→FT’3#E’T’Fa+b*b#F→PF’4#E
51、’T’F’Pa+b*b#P→a5#E’T’F’aa+