- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
学习中心/函授站
姓名学号
西安电子科技大学网络与继续教育学院
2023学年上学期
《编译原理与技术》期末考试试题
(综合大作业)
题号一二三四总分
题分10203040
得分
一、单选题(每小题2分,共10分)
1、编译过程中,生成中间代码所依据的是_____C_____。
A.语法规则B.词法规则C.语义规则D.等价变换规则
2、在自下而上语法分析中,LL(1)中的第二个L表示____B____。
A.最右归约B.最左推导C.最左归约D.最右推导
3、在自下而上语法分析中,句柄是指右句型中的_____D___。
A.非终结符B.短语C.直接短语D.最左直接短语
4、有限状态自动机(NFA、DFA)可以识别的语言为____D____。
A.上下文有关语言B.上下文无关语言
C.短语文法定义的语言D.正规文法定义的语言
5、在布尔表达式短路计算的翻译方案中,当按照产生式E→E1andE2进行归约时,
可以确定B。
A.E1的真出口B.E1的假出口C.E2的真出口D.E2的假出口
二、填空(每空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、请列举三种常用的中间代码,并说明编译过程中采用中间代码有什么好处。
1、答:常用的中间代码:三地址码,后缀式,DAG图。
中间代码的特点是与具体机器(指令系统)无关;采用中间代码
可以明确区分前端与后端;便于优化和移植。
2、请计算下面文法G[E]中各非终结符的FIRST和FOLLOW集合,同时说明该文法为
什么不是LL(1)文法。
E→E*T|TT→T-F|FF→(E)|id
2、答:
FIRST(F)=FIRST(T)=FIRST(E)={(,id}FOLLOW(E)={#,*,)}
FOLLOW(T)={-,*,#,)}
FOLLOW(F)={-,*,#,)}
First集与Follow集合的交集不为空,因此不是LL(1)文法。
3、请给出下述语句的三地址码序列并指出此语句的出口。
while(x100)do
beginx:
您可能关注的文档
- 西电2023学年上学期《JAVA程序设计》综合大作业答案.pdf
- 西电2023学年上学期《MATLAB与系统仿真》综合大作业答案.pdf
- 西电2023学年上学期《UML基础与应用》综合大作业答案.pdf
- 西电2023学年上学期《电力系统自动化技术》综合大作业答案.pdf
- 西电2023学年上学期《电器控制及PLC应用》综合大作业答案.pdf
- 西电2023学年上学期《电子测量技术》综合大作业答案.pdf
- 西电2023学年上学期《多媒体技术》综合大作业答案.doc
- 西电2023学年上学期《概率论与数理统计》综合大作业答案.pdf
- 西电2023学年上学期《高级语言程序设计(C)》综合大作业答案.pdf
- 西电2023学年上学期《公差与技术测量》综合大作业答案.pdf
文档评论(0)