- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2015年计科编译原理期中试题及答案
填空题(每空1分,共24分)
1、文法G定义为四元组(VN,VT,P,S),其中VN是 非终结符集合, VT是 终结符集合,P是 规则的集合 ,S是 起始符或识别符 。
2、乔姆斯基形式文法共有4种,分别是 0型或短语文法 , 1型 或上下文有关文法 , 2型或上下文无关文法 , 3型或正规文法 。
3、列举4种以上的自底向上语法分析方法 简单优先 , 算符优先 , LR(0)
SLR(1), LR(1),LALR(1) , 。
4.程序设计语言的发展带来了日渐多变的运行时存储管理方案,主要分为两大类,即 静态存储分配 方案和 动态存储分配 方案。
5、你所知道的词法分析程序自动构造工具有 LEX 。
6、编译方式与解释方式的根本区别在于 编译方式先翻译后执行,解释方式则是边翻译边执行 。
7、简单优先分析法归约的对象是 句柄 ,算符优先分析法归约的对象是 最左素短语 。
8、编译程序分为6个阶段分别是: 词法分析 、 语法分析 、 语义分析、中间代码生成、代码优化、目标代码生成 。
选择题(每题2分,共16分)
1、哪个不是DFA的构成成分(C )
A、 有穷字母表 B、初始状态集合
C、 终止状态集合 D、有限状态集合
2、词法分析器的输入是(B )
?A、单词符号串???? B、源程序
?C、语法单位???? ??D、目标程序
3、在词法分析阶段不能识别的是( C )
A、标识符 B、运算符
C、四元式 D、常数
4、自上而下语法分析的主要动作是( D )不严格,加算法动作匹配,否则是推导
A、移进 B、推导
C、规约 D、匹配
5、文法[S]为S→AB|bC,A→ε|b,B→ε|aD,C→AD|b,D→aS|c,FOLLOW(A)为 (C ) A、{a,c,#} B、{c,#} C.、{a,#} D、{#}
6、.设有文法G[S]: S→Ap|Bq,A→a|cA,B→b|dB ,则FIRST(Ap)为( C )
A、{p,q} B、{b,d} C、{a,c} D、 其他
7、设有文法G[S]:S→b|bB B→bS ,则该文法所描述的语言是( C )
A、L(G)={bi|i≥0} B、L(G)={b2i|i≥0}
C、L(G)={b2i+1|i≥0} D、L(G)={b2i+1|i≥1}
8、.设有文法G[S]: S→Ap|Bq,A→a|cA,B→b|dB ,则FIRST(Ap)为( C )
A、{p,q} B、{b,d} C、{a,c} D、 其他
三、综合题(共55分)
1、构造正规式r=b((ab)*|bb)*ab的DFA并化简。(10分)
NFA
确定化
重命名
DFA
2. 判断文法G[S]:S→MH|a H→LSo|ε K→dML|ε L→eHf M→K|bLM是否是LL(1)文法,如果是,构造其LL(1)预测分析表(10分)
所以是LL(1)
预测分析表如下
3.文法G[S ] (10分)
(1) S→aAcBe
(2) A→b
(3) A→Ab
(4) B→d
(1)构造文法的LR(0)分析表;(5分)
(2)给出分析输入串abbcde#是否为句子的LR(0)分析过程。(5分)
(2)求LR(0)分析表(4分)
(3)分析过程(4分)
见书上例题
4. (共15分)对算数表达式文法G[E]:
E→E+T|T T→T*F|F F→(E)|i
构造算符优先关系表和LR分析表;(10分)
分别使用两种表对分析符号串i+i*i#是否为该文法句子。(5分)
算符优先关系表
FirstVT(E)={+,*,(,i} FirstVT(T)={*,(,i} FirstVT(F)={(,i}
LastVT(E)={+,*,),i} LastVT(T)={*,),i}
原创力文档


文档评论(0)