资源描述:
《编译原理三后附标准答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、编译原理课后题答案第二章P36-6(1)是0~9组成的数字串(2)最左推导:最右推导:P36-7G(S)P36-8文法:最左推导:最右推导:语法树:/*************************************************/P36-9句子iiiei有两个语法树:P36-10/*****************************/P36-11/***************L1:L2:L3:L4:***************/第三章习题参考答案P64–7(1)XYX1234Y5011011确定化:01{X}φ{1,2,3}φφφ{1
2、,2,3}{2,3}{2,3,4}{2,3}{2,3}{2,3,4}{2,3,4}{2,3,5}{2,3,4}{2,3,5}{2,3}{2,3,4,Y}{2,3,4,Y}{2,3,5}{2,3,4,}03201010011065401矚慫润厲钐瘗睞枥庑赖。0111最小化:00211001054301聞創沟燴鐺險爱氇谴净。0111P64–8(1)(2)(3)P64–12(a)a10a,ba确定化:ab{0}{0,1}{1}{0,1}{0,1}{1}{1}{0}φφφφ给状态编号:ab012112203333a10aabbb32ba最小化:aa210bbab(b)03
3、2bba残骛楼諍锩瀨濟溆塹籟。abaab541ba酽锕极額閉镇桧猪訣锥。aa已经确定化了,进行最小化最小化:021bba彈贸摄尔霁毙攬砖卤庑。abaP64–14(1)01010(2):YX201Y1X0确定化:01{X,1,Y}{1,Y}{2}{1,Y}{1,Y}{2}{2}{1,Y}φφφφ给状态编号:010121122133330100103211謀荞抟箧飆鐸怼类蒋薔。10最小化:0310111厦礴恳蹒骈時盡继價骚。00第四章P81–1(1)按照T,S的顺序消除左递归递归子程序:procedureS;beginifsym='a'orsym='^'thenabv
4、anceelseifsym='('thenbeginadvance;T;ifsym=')'thenadvance;elseerror;endelseerrorend;procedureT;beginS;end;procedure;beginifsym=','thenbeginadvance;S;endend;其中:sym:是输入串指针IP所指的符号advance:是把IP调至下一个输入符号error:是出错诊察程序(2)FIRST(S)={a,^,(}FIRST(T)={a,^,(}FIRST()={,,}FOLLOW(S)={),,,#}FOLLOW(T)={)
5、}FOLLOW()={)}预测分析表a^(),#ST是LL(1)文法P81–2文法:(1)FIRST(E)={(,a,b,^}FIRST(E')={+,ε}FIRST(T)={(,a,b,^}FIRST(T')={(,a,b,^,ε}FIRST(F)={(,a,b,^}FIRST(F')={*,ε}FIRST(P)={(,a,b,^}FOLLOW(E)={#,)}FOLLOW(E')={#,)}FOLLOW(T)={+,),#}FOLLOW(T')={+,),#}FOLLOW(F)={(,a,b,^,+,),#}FOLLOW(F')={(,a,b,^,+,),#}
6、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(^)=φ所以,该
7、文法式LL(1)文法.(3)+*()ab^#EE'TT'FF'P(4)procedureE;beginifsym='('orsym='a'orsym='b'orsym='^'thenbeginT;E'endelseerrorendprocedureE';beginifsym='+'thenbeginadvance;Eendelseifsym<>')'andsym<>'#'thenerrorendprocedureT;beginifsym='('orsym='a'orsym='b'orsym='^'thenbeginF;T'endelseerrorendproced
8、ureT'