编译原理习题答案.ppt
《编译原理习题答案.ppt》由会员分享,可在线阅读,更多相关《编译原理习题答案.ppt(24页珍藏版)》请在三一办公上搜索。
1、习题及解答:,第一章什么是编译程序?什么是解释程序?二者的区别?1、编译程序:是一种翻译程序,它特指把某种高级程序设计语言翻译成具体计算机上的低级程序设计语言。2、解释程序:解释程序(interpreter)也是一种翻译程序,将某高级语翻译成具体计算机上的低级程序设计语言.两者区别:(1)前者有目标程序而后者无目标程序;(2)前者运行效率高而后者便于人机对话,2、叙述编译程序的逻辑结构和实现机制根据语言和环境的不同,编译程序实现时是把 图中的各阶段划分成若干遍;典型的情况是两遍的编译程序:第一遍:词法分析、语法分析和语义分析。即前端完成分析,一般与机器无关。第二遍:目标代码生成和目标代码优化。
2、即后端完成综合,一般与机器有关。每遍中的各阶段的工作是穿插进行的,例如:使语法分析器处于核心位置,而把词法分析器作为子程序;当语法分析需要下一个单词时,就调用词法分析器,识别一个单词。,第二章,1、P36:8;,i+i*i最左E-E+T-T+T-F+T-i+T-i+T*F-i+F*F-i+i*F-i+i*i,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*i,i*(i+i)最左E-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),i*(i+i)最右E-
3、T-T*F-T*(E)-T*(E+T)-T*(E+F)-T*(E+i)-T*(T+i)-T*(F+i)-T*(i+i)-F*(i+i)-i*(i+i),2、试构造下述语言L的文法:L=ambn|m0,n1;S-AB A-Aa|B-Bb|bor S-AB A-aA|B-bB|b,3、试求下述文法G(Z)所定义的语言:G(Z):Z-b|bB,B-bZZ=bZ=bB=bbZ=bbbZ=bB=bbZ=bbbB=bbbbZ=bbbbbZ=b2n-1,n1,第三章,1.P64,8(1),(3)给出正规表达式:以01结尾的二进制数串分析题意,要求的是二进制小,即由0和1构成的串,并且必须以01结尾,所以本题
4、可以分两部分去完成,一部分实现由0和1构成的任意串,一部分即01,然后将它们连接到一起就可以了,所以本题的解答是:(0|1)*01。,(3)包含奇数个1或奇数个0的二进制数串。本题求二进制串,并且要求包含奇数个0或奇数个1,由于0和1都可以在二进制串中任何地方出现,所以本题只需要考虑一种情况,另外一种情况也可以类似求得。考虑包含奇数个0的字符串:由于只关心0的个数的奇偶数,我们可以把二进制串分成多段来考虑,第1段为二进制串的开始到第1个0为止,这一段包含1个0,并且0的前面有0个或多个1,对于剩下的二进制串按照每段包含两个0的方式去划分,即以0开始,以0结尾,中间可以有0个或多个1,和果一个二
5、进制串被这样划分完后,剩下的部分如果全部是全1串(这些全1串在前面划分的串之间或最后),则该二进制串就具有奇数个0,所以该二进制串可以这样描述:以第1段(1*0)开始,后面由全1串(1*)以及包含两个0的串(01*0)组成,所以包含奇数个0的正规表达式为:1*0(1|01*0)*,本题的解答则是:1*0(1|01*0)*|0*1(0|10*1)*。,2.给定正规式(a|b)*a(a|b),构造其最小DFA M。(参见书图 3.7)首先将其分为终态集3,4和非终态集0,1,2,由于0 a=1,0b=2,2a=1,2b=2都是集合0,1,2的子集,但1a=3,1b=4,属于3,4的子集,故将其划分
6、为0,2,1。对3、4也是如此,即最后划分为:0,2、1、3、4,按顺序重新命名为1、2、3、4。(见书p57页),第四章,1.考虑下面文法G1:S-a|(T),T-T,S|S(1)消去G1的左递归。(书上p69)(2)改写后的文法是否为LL(1)文法?(书P73)给出预测分析表(书P76)。(1)消除左递归:S-a|(T)T-ST T-,S T|(2)FIRST(S)=a,(FIRST(T)=a,(FIRST(T)=,First(a)=a,First()=,First(T)=(S的所有候选的首符集不相交(First 和 Follow集的构造方法见书P78)First(,ST)=,First(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 习题 答案
链接地址:https://www.31ppt.com/p-4993781.html