ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:40.20KB ,
资源ID:9507370      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9507370.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(编译原理复习题有答案版.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

编译原理复习题有答案版.docx

1、编译原理复习题有答案版1、 给出下面语言的相应文法 。 L1=anbnci|n1,i0答案: S AB|B A a|aA B bBc|bc 2给出下面语言的相应文法L1=anbncmdm| m,n1,n为奇数,m为偶数。答案:文法G(S):SAC AaaAbb/ab CccCcc/cc3、构造一个DFA,它接受?=a,b上所有包含ab的字符串。(要求:先将正规式转化为NFA,再将NFA确定化,最小化)(一) 相应的正规式为(a|b)*ab(a|b)*(二) 与此正规式对应的NFA为答案;在自己写的纸上4、对下面的文法G:ETE E+E| TFT TT|FPF F *F| P(E)|a|b|(1

2、) 证明这个文法是LL(1)的。考虑下列产生式:E -E|T -T|F -*F |P -(E) |a|bFIRST(+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)文法.计算这个文法的每个非终结符的FIRST和FOLLOW。(8分)答案:FIRST(E)=(,

3、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,+,),# (3)构造它的预测分析表。(6分)答案;在手机上写出表达式a+b*(c-d)对应的逆波兰式和三元式序列。答案:逆波兰式:(abcd-*+) 三元式序列: OP

4、ARG1 ARG2 (1) - c d (2) * b (1) (3) + a (2) 给出下面语言的相应文法L1=anbnambm|n,m0给出下面语言的相应文法答案: SAB|A|B| A aAb|ab B aBb|abL2=anbnci|n1,i0给出下面语言的相应文法答案: S AB|B A a|aA B bBc|bc 17、对下面的文法G:S ? S ? a T | a T | ? a TT ? ? a T | ? a(1) 消除该文法的左递归和提取左公因子;(2) 构造各非终结符的FIRST和FOLLOW集合;(3) 构造该文法的LL(1)分析表,并判断该文法是否是LL(1)的。1

5、8、文法G(S)及其LR分析表如下,请给出串baba#的分析过程。(1) S DbB (2) D d (3) D (4) B a (5) B Bba (6) B LR分析表ACTIONGOTObDa#SBD0r3s3121acc2s43r24r6S5r665r4r46s7r17S88r5r5答案: 步骤 状态 符号 输入串 0 0 # baba# 1 02 #D baba# 2 024 #Db aba# 3 0245 #Dba ba# 4 0246 #DbB ba# 5 02467 #DbBb a# 6 024678 #DbBba # 7 0246 #DbB # 8 01 #S # acc 七

6、、证明题1、证明下面文法是LL(1)的但不是SLR(1)的。SAaAb|BbBaAB首先该文法无左递归存在,没有公共左因子。 其次:对于SAaAb|BbBa FIRST(AaAb)=a FIRST(BbBa)=b FIRST(AaAb)FIRST(BbBa)= 所以该文法是LL(1)文法。(2)证明该文法不是SLR的。 文法的LR(0)项目集规范族为: I0=S.S S.AaAb S.BbBa A. B. I1= S S. I2= SA.aAb I3= SB.bBa I4= SAa.Ab A. I5= SBb.Ba B. I6= SAaA.b I7= SBbB.a I8= SAaAb. I9=

7、 SBbBa. 考察I0: FOLLOW(A)=a,b FOLLOW(B)=a,b FOLLOW(A)FOLLOW(B)= a,b 产生规约-规约冲突。 所以该文法不是SLR(1)文法。2、证明下面文法是SLR(1)但不是LR(0)的。SAAAb|bBaBaAc|a|aAb解:文法GS: 0:SA 1:AAb 2:AbBa 3:BaAc 4:Ba 5:BaAb状态5存在“归约移进”冲突,状态9存在“归约归约”冲突,因此该文法不是LR(0)文法。 状态5: FOLLOW(B)a,因此,FOLLOW(B)b 状态9: FOLLOW(B)a,FOLLOW(A)#,b,c,因此FOLLOW(B)FOL

8、LOW(A) 状态5和状态9的冲突均可用SLR(1)方法解决,构造SLR(1)分析表该SLR(1)分析表无重定义,因此该文法是SLR(1)文法,不是LR(0)文法。八、语义分析题1、将语句if (A0) then while (C0) do C:=C-D翻译成四元式答案:100 (j, B, 0, 104)103 (j, -, -, 109)104 (j, C, 0, 106)105 (j, -, -, 109)106 (-, C, D, T1)107 (:=, T1, -, C)108 (j, -, -, 104)1092、写出下面语句经语法制导翻译后所生成的四元式代码序列。if xc do

9、 c:=c+1 else x:=x+5答案:假设初始为100,则四元式代码序列为100ifxcgoto104103goto109104M:=C+1105C:=M106goto102107N:=X+5108X:=N1097、设有文法:EE+T|TTT*F|FF(E)|i(1) 证明E+T*F是它的一个句型。(3分): ?*(2) 给出E+T*F的所有短语,直接短语和句柄。(4分)短语: E+T*F, T*F, 直接短语: T*F 句柄: T*F(3) 给出句子+*的最右推导。(4分)没有 答案10、11、构造下面正规式相应的DFA1(0|1)*101答案: I I0 I1 X A,B,C A,B

10、,C B,C B,C,D B,C B,C B,C,D B,C,D B,C,E B,C,D B,C,E B,C B,C,D,y B,C,D,y B,C,E B,C,D14、对下面的文法G:Expr- ExprExpr(Expr)|Var ExprTailExprTail- Expr|Varid VarTail VarTail(Expr) |(1)构造LL(1)分析表。(12分)(2)给出对句子idid(id)的分析过程。(8分)答案: (1)FIRST(Expr)=_ , ( , id FIRST(ExprTail)=_ , FIRST(Var)=id FIRST(VarTail)= ( , F

11、OLLOW(Expr)=# , ) FOLLOW(ExprTail) =# , ) FOLLOW(Var) =_ , # , ) FOLLOW(VarTail) =_ , # , ) (2) 给出对句子idid(id)的分析过程。(步骤 符号栈 输入串 所用产生式 0 Expr id_ _id(id) 1 # ExprTail Var id_ _id(id) ExprVar ExprTail 2 # ExprTail VarTail id id_ _id(id) Varid VarTail 3 # ExprTail VarTail _ _id(id) 4 # ExprTail _ _id(id

12、) VarTail5 # Expr_ _ _id(id) ExprTail_ Expr 6 # Expr _id(id) 7 # Expr_ _id(id) Expr_Expr 8 # Expr id(id)9 # ExprTail Var id(id) ExprVar ExprTail 10 # ExprTail VarTail id id(id) Varid VarTail 11 # ExprTail VarTail (id) 12 # ExprTail )Expr( (id) VarTail(Expr) 13 # ExprTail )Expr (id) 14 # ExprTail ) )

13、Expr( (id) Expr(Expr) 15 # ExprTail ) )Expr id) 16 # ExprTail ) ) ExprTail Var id) ExpVarExprTai 17 # ExprTail ) ) ExprTail VarTail id id) Varid VarTail 18 # ExprTail ) ) ExprTail VarTail ) 19 # ExprTail ) ) ExprTail ) VarTail 20 # ExprTail ) ) ) ExprTail 21 # ExprTail ) ) 22 # ExprTail # ExprTail 23 # # 分析成功

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1