编译原理第三版课后答案_第1页
编译原理第三版课后答案_第2页
编译原理第三版课后答案_第3页
编译原理第三版课后答案_第4页
编译原理第三版课后答案_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

编译 原理 课后题答案第二章P36-6(1)是 09组成的数字串LG()1(2)最左推导:NDNDDD010217345658最右推导: NNDND727127012743868568P36-7G(S)ONDSA1357924680|P36-8文法: ETFi|*/()最左推导: FTiiTFiiFiETETTiii*()()()()()()最右推导:ETFETiFiEiTiFiiEFii*()()()()*()(语法树:/*EEFTE+TFFT+iiiEEFTE-TFFT-iiiEEFT+TFii*+i i- i+*/P36-9句子 iiiei有两个语法树:SieiSieiP36-10/*) (|ST*/P36-11/*L1: |cCabASL2:bcBaAS|L3: |aBbASL4: ABS|01|*/第三章习题参考答案P647(1)10(|)*01 1 0 11确定化:0 1X 1,2,3 1,2,3 2,3 2,3,42,3 2,3 2,3,42,3,4 2,3,5 2,3,42,3,5 2,3 2,3,4,Y2,3,4,Y 2,3,5 2,3,4,01 00 0 1 1 0X 1 2 3 4 Y5X Y012 30 1011 1最小化:,023456023452610230 1456021, 01 0 0 1 00 1011 1P648(1) 01)|(*(2) )5|0(|)9|87|65|43|210)(9|87|65|43|2( *(3) *)|(1|)0|(P6412(a)aa,ba6545012430 1确定化:a b0 0,1 10,1 0,1 11 0 给状态编号:a b0 1 21 1 22 0 33 3 3aaa b b bba最小化:,01230123ab a ab bab(b)b b aa ba0 12 30 1 20 2 3a bb aa a已经确定化了,进行最小化最小化: , 01234501243524355012430124, ,abbaba,3355bb b aa baP6414(1) 010(2):(|)*010 11 4 50 1 20 1YXYX210确定化:0 1X,1,Y 1,Y 21,Y 1,Y 22 1,Y 给状态编号:0 10 1 21 1 22 1 33 3 3001 01 1 10最小化: ,012301230 01 1 100第四章P811(1) 按照 T,S的顺序消除左递归|,)(|TSaG递归子程序:02130 1 3procedure S;beginif sym=a or sym= then abvanceelse if sym=( then beginadvance;T;if sym=) then advance;else error;endelse errorend;procedure T;beginS; Tend;procedure ;beginif sym=, then beginadvance;S; Tendend;其中:sym:是输入串指针 IP所指的符号 advance:是把 IP调至下一个输入符号error:是出错诊察程序(2)FIRST(S)=a,(FIRST(T)=a,(FIRST( T)=,FOLLOW(S)=),#FOLLOW(T)=)FOLLOW( )=)预测分析表a ( ) , #S STT TS TS,是 LL(1)文法P812文法:|)(*|baEPFTE(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,+,),#FOLLOW(P)=*,(,a,b,+,),#(2)考虑下列产生式: ETFPab|*|()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)+ * ( ) a b #E ETETETE T FFFT F FPFPFPF *P E()ab(4)procedure E;beginif sym=( or sym=a or sym=b or sym= then begin T; E endelse errorendprocedure E;beginif sym=+ then begin advance; E endelse if sym# then errorendprocedure T;beginif sym=( or sym=a or sym=b or sym= then begin F; T endelse errorendprocedure T;beginif sym=( or sym=a or sym=b or sym= then T else if sym=* then errorendprocedure F;beginif sym=( or sym=a or sym=b or sym= then begin P; F endelse errorendpro

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论