编译原理及编译程序构造部分课后答案张莉杨海燕编著.doc

上传人:h**** 文档编号:778108 上传时间:2018-11-01 格式:DOC 页数:30 大小:672.50KB
下载 相关 举报
编译原理及编译程序构造部分课后答案张莉杨海燕编著.doc_第1页
第1页 / 共30页
编译原理及编译程序构造部分课后答案张莉杨海燕编著.doc_第2页
第2页 / 共30页
编译原理及编译程序构造部分课后答案张莉杨海燕编著.doc_第3页
第3页 / 共30页
编译原理及编译程序构造部分课后答案张莉杨海燕编著.doc_第4页
第4页 / 共30页
编译原理及编译程序构造部分课后答案张莉杨海燕编著.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、第一章练习 12、典型的编译程序可划分为哪几个主要的逻辑部分?各部分的主要功能是什么?典型的编译程序具有 7 个逻辑部分:第二章练习 2.24.试证明:A+ =AA*=A*A证: A*=A0A+ ,A+=A1A2An得:A*=A0 A1 A2An AA*=A(A0A1A2An)= AA0AA1AA2 A An=AA2A3 An +1= A+同理可得:A*A =(A0A1A2 An)A=A0 AA1AA2A AnA= AA2 A3 An+1= A+因此: A+ =AA*=A*A练习 2.31.设 G标识符 的规则是 :标识符:=a|b|c|标识符a|标识符 c|标识符0|标识符 1试写出 VT

2、和 VN,并对下列符号串 a,ab0,a0c01,0a,11,aaa 给出可能的一些推导。解:VT =a,b,c,0,1, VN =标识符(1) 不能推导出 ab0,11,0a(2)标识符=a(3)标识符=标识符1=标识符01=标识符c01=标识符0c01= a0c01(4)标识符=标识符a=标识符aa=aaa2写一文法,其语言是偶整数的集合解:G::= | := + | |:= |:= | 1 | 3 | 5 | 7 | 9:=0 | 2 | 4 | 6 | 84. 设文法 G 的规则是:A :=b| cc试证明:cc, bcc, bbcc, bbbccLG证:(1) A=cc(2) A=b

3、A=bcc(3) A=bA=bbA=bbcc(4) A=bA=bbA=bbb A=bbbcc又cc, bcc, bbcc, bbbccVt*由语言定义,cc, bcc, bbcc, bbbccLG5 试对如下语言构造相应文法:(1) a(bn)a | n=0,1,2,3,其中左右圆括号为终结符。(2) (an) (bn ) | n=1,2,3, 解:(1)文法GS :S:= a(B)aB:= bB |( 2 ) 文法GS:-错了,两个 n 不等S := (A)(B)A:= aA|aB:= bB|b7.对文法 G3表达式表达式:=项|表达式+项| 表达式-项项:=因子| 项*因子|项 /因子因子

4、:=(表达式 )| i列出句型表达式+项* 因子的所有短语和简单短语。= + = + * 短语有:表达式+项*因子和项*因子简单短语是:项*因子8 文法 V:= aaV | bc 的语言是什么?解:L(GV)= a2nbc | n=0,1,2,V aaV aaaaV . a2nbc (n 1)V bc (n=0)练习 2.45.已知文法 GE:E:=ET+ | TT:=TF* |FF:=FP |PP:=(E )| i有句型 TF*PP+,问此句型的短语,简单短语,和句柄是什么?解:此句型的短语有:TF*PP+ ,TF* ,PP,P简单短语有:TF*,P句柄是:TF*8.证明下面的文法 G 是二

5、义的:S:= iSeS | iS | i证:由文法可知 iiiei 是该文法的句子,又由文法可知 iiiei 有两棵不同的语法树。所以该文法是二义性文法。第三章练习 3.11画出下述文法的状态图Z:=BeB :=AfA := e |Ae使用该状态图检查下列句子是否是该文法的合法句子f,eeff,eefe2、有下列状态图,其中 S 为初态,Z 为终态。(1) 写出相应的正则文法:(2) 写出该文法的 V,Vn 和 Vt;(3) 该文法确定的语言是什么?解:(1) ZA1|0 AA0|0(2) V=A,Z,0,1Vn=A,ZVt=0,1(3) L (GS)= 0 或 0n1,n1L (GS)= 0

6、|00*1练习 3.21令 A,B,C 是任意正则表达式,证明以下关系成立:A|A=A(A*) *= A*A*=| AA*(AB)*A = A(BA)*(A|B )* =(A*B* )*=(A*|B*)证明:A A xxL(A) 或 xL(A)xxL(A) A(A* )* (A* )0(A*)1 (A*)2(A*)n(A0A 1A2An) (A1)A0A 1A2AnA*AA* 所表示的语言是 :LALA*LA0LA(LA0LA1LA2)LA0LA1LA2LA*故 AA* A*(LALB)*LA=(L(A)LBLALBLALB LALBLALBLALB) LA=LALALBLALALBLALBLALALBLALBLALB LA= LA(LBLA LBLALBLA )= LA(LBLA)(AB)*A=A(BA)*三个表达式所描述的语言都是 LALB 中任意组合(A|B )*=(A*B*)=(A*|B*)*2. 构造下列正则表达式相应的 DFA(1) 1(0|1)*|0(2) 1(1010*|1 (010 )*1)*04. 5. 构造一 DFA,它接受 =0,1上所有满足如下条件的字符串:每个 1 都有 0 直接跟在右边。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 参考答案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。