编译原理考试习题及答案教学内容.ppt
《编译原理考试习题及答案教学内容.ppt》由会员分享,可在线阅读,更多相关《编译原理考试习题及答案教学内容.ppt(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1编译原理考试习题及答案2CH.3.CH.3.练习题练习题7(P64.)7(P64.)n7.7.(1)1(0|1)*101 构造构造DFADFA。解解1:正规式对应的正规式对应的NFA:XY34511011210 I I0 I1X 1,3,2 1,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,Y,4,23,Y,4,23,5,2 3,4,2 I I0 I1初初0 1 1 2 3 2 2 3 3 4 3 4 2 5终终5 4 32022/12/15 (1)正规式正规式 1(0|1)*101DFA:x3,Y,4,23,4,23,5
2、,211011,3,23,20100101 I I0 I1X 1,3,2 1,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,Y,4,23,Y,4,23,5,2 3,4,2 I I0 I1初初0 1 1 2 3 2 2 3 3 4 3 4 2 5终终5 4 32022/12/15 (1)正规式正规式 1(0|1)*101DFA:I I0 I1X 1,3,2 1,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,Y,4,23,Y,4,23,5,2 3,4,2 I
3、I0 I1初初0 1 1 2 3 2 2 3 3 4 3 4 2 5终终5 4 3053411011201001012022/12/155CH.3.CH.3.练习题练习题7(P64.)7(P64.)n7.7.构造下列正规式相应的构造下列正规式相应的DFADFA。(1)1(0|1)*101 解解2:正规式对应的正规式对应的NFA:04123110110 I I0 I10 初初01 11 11 11,2 21,2 21,3 31,2 21,3 31 11,2,4 41,2,4终终4 1,3 31,2 210423110110010DFA:2022/12/156n7.7.构造下列正规式相应的构造下列
4、正规式相应的NFANFA。(P64.)(P64.)(2)1(1010*|1(010)*1)*0XY201131010*1(010)*1XY201136451100*7811(010)*2022/12/157n7.7.构造下列正规式相应的构造下列正规式相应的NFANFA。(P64.)(P64.)(2)1(1010*|1(010)*1)*0XY201136451100*7811(010)*XY20113645110078119100102022/12/15XY2011364511007811910010XY201136451100781191001211017.7.(2)1(1010*|1(010
5、)*1)*0的的NFANFA。2022/12/159CH.3.CH.3.练习题练习题14(P64.)14(P64.)n(1)正规式正规式:(10|0)*(2)NFA:确定化确定化:YX1001201001012 I I0 I1X,1,Y 1,Y2 1,Y1,Y2 21,Y I I0 I1初终初终0 1 2 终终 1 1 2 2 1 DFA:2022/12/1510CH.3.CH.3.练习题练习题14(P64.)14(P64.)n(1)正规式正规式:(10|0)*(2)NFA:YX1001201001012DFA:构造一个构造一个DFA,它接受,它接受 S0,1上所有满足如下条件上所有满足如下条
6、件的字符串:每个的字符串:每个1都有都有0直直接跟在右边。接跟在右边。10010DFA:(最简最简)2022/12/15程程 序序 设设 计计 语语 言言 Chapter 2.Chapter 2.高级语言及高级语言及其语法描述其语法描述2022/12/1512CH.2.CH.2.练习题练习题6(P36.)6(P36.)n6.6.令文法令文法G6G6为为:N D|ND D 0|1|2|3|4|5|6|7|8|9 N D|ND D 0|1|2|3|4|5|6|7|8|9n(1)G6(1)G6的语言的语言L(G6)L(G6)是什么是什么?n注意注意:集合的写法不正确:集合的写法不正确n解:解:L(G
7、6)=0,1,2,3,4,5,6,7,8,9L(G6)=0,1,2,3,4,5,6,7,8,9+=0=0 9 9数字构成的所有数字串,可以数字构成的所有数字串,可以0 0开头开头 n(2)(2)给出句子给出句子01270127、3434和和568568的最左和最右推导。的最左和最右推导。n注意注意:1)1)步骤,步骤,和和 的区别的区别;2)2)不能写为不能写为n解:解:01270127的最左推导:的最左推导:N NNDNDNDDNDDNDDDNDDDDDDDDDDD 0DDD0DDD01DD01DD012D012D01270127 0127 0127的最右推导:的最右推导:N NNDNDN7
8、N7ND7ND7N27N27ND27ND27 N127N127D127D12701270127+13CH.2.CH.2.练习题练习题8(P36.)8(P36.)n8.8.令文法为令文法为 E T|E+T|E-T E T|E+T|E-T T F|T*F|T/F T F|T*F|T/F F (E)|i F (E)|i (1)给出给出 i+i*i、i*(i+i)的最左推导的最左推导和最右推导。和最右推导。解解:此处仅以:此处仅以 i*(i+i)为例给出答案为例给出答案最左推导最左推导E E T T T*F T*F F*F F*F i*F i*F i*(E)i*(E)i*(E+T)i*(E+T)i*(
9、T+T)i*(T+T)i*(F+T)i*(F+T)i*(i+T)i*(i+T)i*(i+F i*(i+F)i*(i+i)i*(i+i)最右推导最右推导E E T T T*F T*F T*(E)T*(E)T*(E+T)T*(E+T)T*(E+F)T*(E+F)T*(E+i)T*(E+i)T*(T+i)T*(T+i)T*(F+i)T*(F+i)T*(i+i)T*(i+i)F*(i+i)F*(i+i)i*(i+i)i*(i+i)14CH.2.CH.2.练习题练习题8(P36.)8(P36.)n8.8.令文法为令文法为 E T|E+T|E-T E T|E+T|E-T T F|T*F|T/FT F|T*
10、F|T/F F (E)|i F (E)|iEE -TE -TTF F iF iii-i-i i-i-i 的语法树的语法树(2)给出给出 i+i+i、i+i*i和和i-i-i的语法树。的语法树。EE +TE +TTF F iF iii+i+i i+i+i 的语法树的语法树i+i*i i+i*i 的语法树的语法树EE +TTTF F iF ii*n注意注意:树枝和符号均不可随意增减!:树枝和符号均不可随意增减!15CH.2.CH.2.练习题练习题9(P36.)9(P36.)n9.9.证明下面的文法是二义的:证明下面的文法是二义的:S iSeS|iS|i S iSeS|iS|in证明证明:因为存在句
11、子因为存在句子 iiiei iiiei,它对应两棵不同的语法树,它对应两棵不同的语法树,如右图如右图:所以该文法是二义文法。所以该文法是二义文法。n说明说明:按定义只要能给出一:按定义只要能给出一个反例即可,个反例即可,iiieiiiiei不是唯一不是唯一的反例。的反例。S i S i S e SiiiSi S e S i Si2022/12/15程程 序序 设设 计计 语语 言言 Chapter 5.Chapter 5.自下而上自下而上语法分析语法分析2022/12/1517CH.5.CH.5.练习题练习题1(P133.)1(P133.)n1.1.令文法令文法G1G1为:为:EE+T|T T
12、T*F|F F(E)|i EE+T|T TT*F|F F(E)|i 证证明明E+T*FE+T*F是是它它的的一一个个句句型型,指指出出这这个个句句型型的的所所有有短短语、直接短语和句柄。语、直接短语和句柄。n证证明明1:存存在在从从开开始始符符号号E出出发发到到E+T*F的推导:的推导:E E+T E+T*F E+T*F是是G1的一个句型。的一个句型。短短语语:E+T*F是是句句型型相相对对于于非非终终结结符符E的的短短语语;T*F是句型相对于非终结符是句型相对于非终结符T的短语的短语。直直接接短短语语:T*F是是句句型型相相对对于于规规则则TT*F的的直接短语直接短语句柄句柄:T*FEE +
13、TT *F语法树语法树2022/12/1518CH.5.CH.5.练习题练习题1(P133.)1(P133.)n1.1.令文法令文法G1G1为:为:EE+T|T TT*F|F F(E)|i EE+T|T TT*F|F F(E)|i 证证明明E+T*FE+T*F是是它它的的一一个个句句型型,指指出出这这个个句句型型的的所所有有短短语、直接短语和句柄。语、直接短语和句柄。n证证明明2:可可构构造造出出E+T*F的的语语法法树树,如如右右图所示图所示,E+T*F是是G1的一个句型。的一个句型。n证明证明3:(也可用归约来证明也可用归约来证明)(概概念念熟熟悉悉后后,短短语语、直直接接短短语语和和句句
14、柄柄可可直直接接列列出出而不用说明)而不用说明)短语短语:E+T*F,T*F 直接短语直接短语:T*F 句柄句柄:T*FEE +TT *F语法树语法树2022/12/1519CH.5.CH.5.练习题练习题2(P133.)2(P133.)n2.2.考虑下面的表格结构文法考虑下面的表格结构文法G2G2:Sa|Sa|(T)TT,S|S|(T)TT,S|S (1)(1)给出给出(a,(a,a)(a,(a,a)的最左和最右推导。的最左和最右推导。n(1)解解:(a,(a,a)的的最左推导:最左推导:S(T)(T,S)(S,S)(a,S)(a,(T)(a,(T,S)(a,(S,S)(a,(a,S)(a,
15、(a,a)最右推导:最右推导:S(T)(T,S)(T,(T)(T,(T,S)(T,(T,a)(T,(S,a)(T,(a,a)(S,(a,a)(a,(a,a)2022/12/1520CH.5.CH.5.练习题练习题2(P133.)2(P133.)n2.(2)2.(2)指指出出(a,(a,a)(a,(a,a)的的规规范范归归约约及及每每一一步步的的句句柄柄。根根据据这这个个规规范范归归约约,给给出出“移移进进-归归约约”的的过过程程,并并给给出它的语法树自下而上的构造过程。出它的语法树自下而上的构造过程。n(2)解解:(a,(a,a)的规范归约及每一步的句柄的规范归约及每一步的句柄:(a,(a,a
16、)(S,(a,a)(T,(a,a)(T,(S,a)(T,(T,a)(T,(T,S)(T,(T)(T,S)(T)S.2022/12/1521CH.5.CH.5.练习题练习题2(P133.)2(P133.)n2.(2).2.(2).给出给出(a,(a,a)“(a,(a,a)“移进移进-归约归约”的过程。的过程。n(2)解解:(a,(a,a)的的“移进移进-归约归约”过程过程:步骤步骤 符号栈符号栈 输入串输入串 动作动作 句柄句柄 1#(a,(a,a)#a 2#(a,(a,a)#移进移进(3#(a ,(a,a)#移进移进 a 4#(S ,(a,a)#归约归约 S a S 5#(T ,(a,a)#归
17、约归约 T S a 6#(T,(a,a)#移进移进,7#(T,(a,a)#移进移进(8#(T,(a ,a)#移进移进 a2022/12/1522CH.5.CH.5.练习题练习题2(P133.)2(P133.)n2.(2).2.(2).给出给出(a,(a,a)“(a,(a,a)“移进移进-归约归约”的过程。的过程。n(2)解解:(a,(a,a)的的“移进移进-归约归约”过程过程:步骤步骤 符号栈符号栈 输入串输入串 动作动作 句柄句柄 9#(T,(S ,a)#归约归约 S a S 10#(T,(T ,a)#归约归约 T S a 11#(T,(T,a)#移进移进,12#(T,(T,a )#移进移进
18、 a 13#(T,(T,S )#归约归约 S a T,S 14#(T,(T )#归约归约 T T,S (T)15#(T,(T)#移进移进)16#(T,S )#归约归约 S (T)T,S2022/12/1523CH.5.CH.5.练习题练习题2(P133.)2(P133.)n2.(2).2.(2).给出给出(a,(a,a)“(a,(a,a)“移进移进-归约归约”的过程。的过程。n(2)解解:(a,(a,a)的的“移进移进-归约归约”过程过程:步骤步骤 符号栈符号栈 输入串输入串 动作动作 句柄句柄 17#(T )#归约归约 T T,S (T)18#(T)#移进移进)19#S#归约归约 S (T)
19、20 成功成功,分析结束分析结束,接受输入串接受输入串2022/12/1524CH.5.CH.5.练习题练习题2(P133.)2(P133.)n2.(2).2.(2).给出给出(a,(a,a)(a,(a,a)的语法树自下而上构造过程。的语法树自下而上构造过程。n(2)解解:(a,(a,a)的的语语法法树树自自下下而而上上构构造造过过程程:用序号表示用序号表示S(T )T ,S (T )T ,SSaSaa2022/12/1525CH.5.CH.5.练习题练习题3(P133.)3(P133.)n3.(1)3.(1)计算练习计算练习2 2文法文法G2G2的的FIRSTVTFIRSTVT和和LASTV
20、TLASTVT。Sa|Sa|(T)TT,S|S|(T)TT,S|Sn(1)解解:(执行相应的算法可求得)(执行相应的算法可求得)FIRSTVT(S)=a,(FIRSTVT(T)=,a,(LASTVT(S)=a,)LASTVT(T)=,a,),2022/12/1526CH.5.CH.5.练习题练习题3(P133.)3(P133.)n3.(2)3.(2)计计算算文文法法G2G2的的优优先先关关系系,G2,G2是是一一个个算算符符优优先先文文法吗法吗?Sa|?Sa|(T)TT,S|S|(T)TT,S|Sn(2)解解:FIRSTVT(S)=a,(FIRSTVT(T)=,a,(LASTVT(S)=a,)
21、LASTVT(T)=,a,)n逐逐一一考考察察 S(T)和和 TT,S 两两两两相相邻邻的的符符号号,得得到到算算符符优优先先关关系系,如如右右图;图;G2是算符优先文法是算符优先文法。a (),#a (=,#=.2022/12/15273.(4)3.(4)给出输入串给出输入串(a,(a,a)(a,(a,a)的的算符优先分析过程。算符优先分析过程。nSa|Sa|(T)TT,S|S|(T)TT,S|S序号序号符号栈符号栈输入串输入串优先关系优先关系下一步的动作下一步的动作0#(a,(a,a)#(移进移进(1#(a,(a,a)#(a移进移进 a2#(a ,(a,a)#(,归约归约 Sa3#(S ,
22、(a,a)#(,移进移进,4#(S,(a,a)#,(移进移进(5#(S,(a,a)#(a移进移进 a6#(S,(a ,a)#(,归约归约 Sa7#(S,(S ,a)#(,移进移进,8#(S,(S,a)#,(=,#=最左素短语最左素短语.2022/12/1528序号序号符号栈符号栈输入串输入串优先关系优先关系下一步的动作下一步的动作9#(S,(S,a )#,)归约归约 Sa10#(S,(S,S )#()归约归约 TS,S11#(S,(T )#(=)移进移进)12#(S,(T)#,)归约归约 S(T)13#(S,S )#()归约归约 TS,S14#(T )#(=)移进移进)15#(T)#*#归约归
23、约 S(T)16#S#=#接受接受17#S#停停.3.(4)3.(4)给出输入串给出输入串(a,(a,a)(a,(a,a)的的算符优先分析过程。算符优先分析过程。nSa|Sa|(T)TT,S|S|(T)TT,S|S a (),#a (=,#=最左素短语最左素短语.2022/12/1529n5.(1)5.(1)考虑文法考虑文法 SAS|b ASA|a SAS|b ASA|a 列出这个文法的所有列出这个文法的所有LR(0)LR(0)项目。项目。CH.5.CH.5.练习题练习题5(P134.)5(P134.)n解解(1):(1):拓广文法,加入拓广文法,加入 SSSS 拓广文法的拓广文法的LR(0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 考试 习题 答案 教学内容
限制150内