- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
_
学习中心/函授站
姓名学号
西安电子科技大学网络与继续教育学院
2022学年上学期
《编译原理与技术》期末考试试题
(综合大作业)
题号一二三四总分
题分10203040
得分
考试说明:
1、大作业试题公布时间:2022年4月22日;
2、考试必须独立完成,如发现抄袭、雷同均按零分计;
3、答案须用《西安电子科技大学网络与继续教育学院2022春期末考试答题纸》(个
人专属答题纸)手写完成,要求字迹工整、卷面干净、整齐;
4、拍照要求完整、清晰,一张图片对应一张个人专属答题纸(A4纸),正确上传。
一、单选题(每小题2分,共10分)
1、在以阶段划分的编译器中,阶段的主要作用是识别源程序中的句子结构。
A、词法分析B、语法分析C、语义分析D、代码优化
2、在自下而上语法分析中,LL(1)中的第二个L表示。
A、最右归约B、最左推导C、最左归约D、最右推导
3、在自下而上语法分析中,句柄是指右句型中的。
A、非终结符B、短语C、直接短语D、最左直接短语
4、给定文法A→bA|aa,是该文法的句子。
A、aabbB、ababC、bbaaD、baba
5、在布尔表达式短路计算的翻译方案中,当按照产生式E→E1andE2进行归约时,
可以确定。
A、E1的真出口B、E1的假出口C、E2的真出口D、E2的假出口
答案:1-5BBDCB
二、填空(每空2分,共20分)
1、动态存储分配包括分配和分配两种。
2、正规式(a|b)*abb表示的正规集为。
3、上下文无关文法G的四元组(N,T,P,S)中,S表示,P表示。
4、在文法E→E+T|TT→F*T|FF→id中,运算+的优先级比*,
运算+是结合的,运算*是结合的。
5、函数调用执行时,引用调用是指,值调用是指。
答案:
1.栈式、堆式
2.{abb,aabb,babb,ababb,aaabb,bbabb}
3.开始符号、产生式集合
4.低、左、左
5.将实参的地址传递给形参、将实参的值传递给形参
三、简答题(每小题10分,共30分)
1、请列举三种常用的中间代码,并说明编译过程中采用中间代码有什么好处。
答:常用的中间代码:三地址码,后缀式,DAG图。
中间代码的特点是与具体机器(指令系统)无关;采用中间代码可以明确
区分前端与后端;便于优化和移植。
解释:中间代码实际上应起一个编译器前端与后端分水岭的作用。为此要
求中间代码具有如下特性,以便于编译器的开发移植和代码的优化:(1
)便于语法制导翻译;(2)既与机器指令的结构相近,又与具体机器无
关。
2、请计算下面文法G[E]中各非终结符的FIRST和FOLLOW集合。请说
文档评论(0)