《编译原理习题课》PPT课件.ppt
《《编译原理习题课》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《编译原理习题课》PPT课件.ppt(29页珍藏版)》请在三一办公上搜索。
1、习题课,令文法GE为:ETE+TE-T TFT*FT/F F(E)i证明E+T*F是它的句型,指出这个句型的所有短语、直接短语和句柄,EE+TE+T*F短语:E+T*F和T*F直接短语:T*F句柄:T*F,E,E,+,T,T,*,F,一个上下文无关文法生成的句子abbaa的推导树如图。(1)给出该句子的相应的最左推导和最右推导(2)该文法的产生式集合P可能有哪些元素?(3)找出该句子的所有的短语、简单短语、句柄。,SABSaBSaSBBS aBBS abBSabbSabbAaabbaa最左推导最右推导略产生式集合:SABSBSBBSAaSBbAa短语、句柄,S,A,B,S,a,S,B,B,A,
2、a,b,b,a,习题解答,7给文法GS:SaA|bQAaA|bB|bBbD|aQQaQ|bD|bDbB|aAEaB|bFFbD|aE|b构造相应的最小的DFA。,由于从S出发任何输入串都不能到达状态E和F,所以,状态E,F为多余的状态,不予考虑。,简化产生式后生成的NFA,因为4,5状态包含Z,所以都是终态,1,2,3,6,7都是非终态;1态输入b后为3,是非终态;2和3输入b后为4和5是终态,所以1和2,3是不同的状态;2和3是相同等价状态;4和5是等价状态;6何是等价状态;所以,最后剩下:1,2,4,6四个状态.,最小化的DFA,1,2,4,3,7,6,a,b,b,a,a,5,b,a,b,
3、a,b,a,b,b,a,8.给出下述文法所对应的正规式,S0A|1BA1S|1B0S|0将 A1S|1 和 B0S|0 分别代入 S0A|1B 得:S=01S|01S=10S|10得产生式:S=01S|10S|01|10 化简得:S=(01|10)S|(01|10)S=(01|10)*(01|10)得正规式:(01|10)*(01|10),将图4.18的DFA最小化,并用正规式描述它所识别的语言:,因为6,7是DFA的终态,其他是非终态,可将状态集分成两个子集:P1=1,2,3,4,5,P2=6,7。由于F(6,b)=F(7,b)=6,而6,7又没有其他输入,所以6,7等价。由于F(3,c)=
4、F(4,c)=3,F(3,d)=F(4,d)=5,F(3,b)=6,F(4,b)=7,而6,7等价,所以3,4等价。由于F(1,b)=F(2,b)=2,F(1,a)=3,F(2,a)=4,而3,4等价,所以1,2等价。由于状态5没有输入字符b,所以与1,2,3,4都不等价。综上所述,上图DFA的状态可最细分解为:P=1,2,3,4,5,6,7。,最小化后的DFA,该DFA用正规式表示为:b*a(c|da)*bb*,习题解答,2对下面的文法G:ETEE+E|TFTTT|FPFF*F|P(E)|a|b|计算这个文法的每个非终结符的FIRST集和FOLLOW集。证明这个方法是LL(1)的。构造它的预
5、测分析表。,S为文法开始符号,#一定是FOLLOW(S)元素设A B是一个产生式,则First()的非空元素属于FOLLOW(B)如果*,则FOLLOW(A)的元素就要加入到FOLLOW(B)中,因为:D 1A1A B两个产生式,在推导过程中,可能会出现这样的句型S*1A1*1B1*1B1,计算每个非终结符的FIRST和FOLLOW集合,计算每个非终结符的FIRST集合,FIRST(E)=FIRST(T)=FIRST(F)=FIRST(P)=(,a,b,;FIRST(E)=+,FIRST(T)=FIRST(F)=FIRST(P)=(,a,b,;FIRST(T)=FIRST(T)=(,a,b,;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译原理习题课 编译 原理 习题 PPT 课件
链接地址:https://www.31ppt.com/p-5590324.html