编译原理复习题答案要点.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二、概念题 1、设有文法:P→P+Q|Q Q→Q*R|R R→(P)|i (1))))) (2): E+T*F, T*F, 直接短语: T*F 句柄: T*F (3)a+b*(c-d)对应的逆波兰式和三元式序列。 答案:逆波兰式:(abcd-*+) 三元式序列: OP ARG1 ARG2 (1) - c d (2) * b (1) (3) + a (2) 三、词法分析题 给出下面语言的相应文法 L1={anbnambm|n,m≥0} 答案:??S→AB|A|B|∑ ?A→?aAb|ab? B→?aBb|ab 给出下面语言的相应文法 L2={anbnci|n≥1,i≥0} 答案:?S→?AB|B???? A→?a|aA? B→?bBc|bc 给出下面语言的相应文法 L3={anbncm| m,n≥1,n为奇数,m为偶数}。 答:文法G(S):I??????? I0?????? ?I1? {X}???? Ф?? ?{A,B,C}?? {A,B,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,D} 3、构造一个DFA,它接受(={a,b}上所有包含ab的字符串。 (要求:先将正规式转化为NFA,再将NFA确定化,最小化) 答案:(一)相应的正规式为(a|b)*ab(a|b)* (二) ①与此正规式对应的NFA为 ②状态转换矩阵为: ③ 最小化: {0,1,2} {3,4,5} {0, 2},1, {3,4,5} ④所以此等价的DFA为:开始状态为0 ,终态集为{3} ,状态集为{0,1,3} , 输入字母表是{a,b} (a|b)*ba 等价的DFA 五、语法分析题 1、对下面的文法G: Expr→- Expr Expr→(Expr)|Var ExprTail ExprTail→- Expr|ε Var→id VarTail VarTail→(Expr) |ε 构造LL(1)分析表。(12分) 答案: (1)FIRST(Expr)={_ , ( , id } FIRST(ExprTail)={_ , ε } FIRST(Var)={id} FIRST(VarTail)={ ( , ε} FOLLOW(Expr)={# , ) } FOLLOW(ExprTail) ={# , ) } FOLLOW(Var) ={_ , # , ) } FOLLOW(VarTail) ={_ , # , ) } 给出对句子id—id((id))的分析过程。(8分) 步骤 符号栈 输入串 所用产生式 0 #Expr id_ _id((id))# 1 # ExprTail Var id_ _id((id))# Expr→Var ExprTail 2 # ExprTail VarTail id id_ _id((id))# Var→id VarTail 3 # ExprTail VarTail _ _id((id))# 4 # ExprTail _ _id((id))# VarTail→ε 5 # Expr_ _ _id((id))# ExprTail→_ Expr 6 # Expr _id((id))# 7 # Expr_ _id((id))# Expr→_Expr 8 # Expr id((id))# 9 # ExprTail Var id((id))# Expr→Var ExprTail 10 # ExprTail VarTail id id((id))# Var→id VarTail 11 # ExprTail VarTail ((id))# 12 # ExprTail )Expr( ((id))# VarTail→(Expr) 13 # ExprTail )Expr (id))# 14 # ExprTail ) )Expr( (id))# Expr→(Expr) 15 # ExprTail ) )Expr id))# # ExprTail ) ) ExprTail Var id))# Exp→Var ExprT

文档评论(0)

基本资料 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档