1、第 1 页 (共 3 页)学习中心/函授站 _姓 名 学 号西安电子科技大学网络与继续教育学院2021 学年下学期编译原理与技术期末考试试题(综合大作业)题号 一 二 三 四 总分题分 10 20 40 30得分 考试说明:1、大作业试题于 2021 年 10 月 22 日公布:(1)毕业班学生于 2021 年 10 月 22 日至 2021 年 10 月 31 日在线上传大作业答卷;(2)非毕业班学生于 2021 年 11 月 19 日至 2021 年 12 月 5 日在线上传大作业答卷;(3)上传时一张图片对应一张 A4 纸答题纸,要求拍照清晰、上传完整;2、考试必须独立完成,如发现抄袭、
2、雷同均按零分计;3、答案须用西安电子科技大学网络与继续教育学院标准答题纸手写完成,要求字迹工整、卷面干净。一、单选题(每小题 2 分,共 10 分)1、以编译方式和解释方式对高级语言源程序进行翻译时,()。A编译方式不生成源程序的目标代码,解释方式生成源程序的目标代码B编译方式生成源程序的目标代码,解释方式不生成源程序的目标代码C编译方式和解释方式都生成源程序的目标代码D编译方式和解释方式都不生成源程序的目标代码2、在自下而上语法分析中,LR(1)中的 L 表示()。A从左到右扫描输入序列B最左推导C最左归约D最右推导3、一个句型中的最左()称为该句型的句柄。A短语B直接短语C非终结符号D终结
3、符号4、给定文法 AbA|ab,()是该文法的句子。AbabbBababCbaabDbbab5、用来描述控制进入和离开活动的树结构被称为()。A语法树B分析树C活动树D嵌套关系树二、填空(每空 2 分,共 20 分)第 2 页 (共 3 页)4 4 1 12 23 30 0a bba1、在以阶段划分的编译器中,识别单词的阶段称为 ,识别句子结构并将其表示成树形式的阶段称为 ,贯穿整个编译过程的两个辅助过程(阶段)为 和 。编译器前端生成的既接近目标语言,又与具体机器无关的表示称为 。2、将机器语言翻译成汇编语言的过程称为 。3、 上 下 文 无 关 文 法 G 的 四 元 组 ( N,T,P,
4、S 中 , T 表 示 , P 表示 。4、设有二维数组 M20,10 以行为主存放,数组元素下标从 1 开始,每个元素占 1 个存储单元,元素 M8,5相对于该数组空间首地址的偏移量为 。5、在值调用参数传递方式中,参数传递是指 。三、简答题(每小题 10 分,共 40 分)1、简述由正规式构造词法分析器的一般方法和过程。2、对于文法 G:E E + T | TT T * F | FF (E)| num请给出句型 T*(E+5)的分析树,并指出该句型中的所有短语、直接短语和句柄。3、请给出下述表达式的后缀式与语法树。x := 2*(4+5)/3 - 64、请给出函数 foo 调用时分别采用传
5、值调用和引用调用方式时代码的输出结果。program main(input,output)procedure foo(a,b)begina := a + 2;b := a * 5 - b;end;beginx := 4; y := 7;foo(x, y);print(x,y);end.四、计算题 ( 每小题 5 15 分,共 共 0 30 分 )1、某 NFA 的状态转换图如下表所示 (0 是初态,4 是终态)(1)用“子集法”把该 NFA 确定化为 DFA D;(2)将 DFA D 最小化。2、设有上下文无关无法G及其语法制导翻译如下(注:G中终结符id仅由单个英文字母组成,如a, b等):EE 1 *T E.place=newtemp; emit(*, E 1 .place, T.place, E.place;| T E.place=T.place;TT 1 -F T.place=newtemp; emit(-, T 1 .place, F.place, T.place;第 3 页 (共 3 页)| F T.place=F.place;Fid F.place=id.name;(1)当 a=5、b=2、c=4 时,写出表达式 a-b*c 的结果;(*表示算术乘、-表示算术减)(2)给出文法 G 识别活前缀的 DFA,简要说明该 DFA 的项目集中是否有冲突及冲突的类型。