学院 姓名 学号 任课老师 考场教室__________选课号/座位号
………密………封………线………以………内………答………题………无………效……
电子科技大学2014 -2015学年第 2学期期 末 考试 A 卷
课程名称: 编译原理 考试形式: 闭卷 考试日期: 2015 年 月 日 考试时长:120分钟 课程成绩构成:大班 平时 10 %, 期中 10 %, 实验 10 %, 期末 70 % 本试卷试题由___七_ _部分构成,共__8___页。
题号 得分 得 分 一、选择题(共20分,共 10题,每题2分)
1. 通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括( )
A.模拟执行器 B.解释器 C.表格处理和出错处理 D.符号执行器
2. 如果在推导过程中的任何一步α?β,都是对α中的最右非终结符进行替换,则称这种推导为( )
A.直接推导 B.广义推导 C.最左推导 D.规范推导
3. 设有文法G[S]=({S,B},{b},{S→bB | b,B→bS},S),该文法所描述的语言是( ) A.L(G[S])={bn| n ≥0} B. L(G[S])={b2n | n ≥ 0} C. L(G[S])={b2n+1 | n ≥ 0} D. L(G[S])={b2n+1 |n ≥ 1} 4. 项目A?α·称为( ),其中A∈VN,A不是开始符。
A.移进项目 B.归约项目 C.待约项目 D.接受项目 5. 编译程序生成的目标程序( )是机器语言的程序。
A.一定 B.不一定 C.某种情况下一定 D.某种情况下不一定 6. 高级语言编译程序常用的语法分析方法中,递归下降分析法属于( )分析方法。 A.自左至右 B.自顶向下 C.自底向上 D.自右向左 7. 运行阶段的存储组织和管理的目的是( ) (1)提高编译程序的运行速度 (2)提高目标程序的运行速度 (3)为运行阶段的存储分配做准备
A.(1)(2) B.(1)(3) C.(2) D.(1)(2)(3)
8. 如果文法 G 是无二义的,则它的任何句子α( ) A.最左推导和最右推导对应的语法树必定相同 B.最左推导和最右推导对应的语法树可能不同 C.最左推导和最右推导必定相同
第 1 页 共 8 页
一 二 三 四 五 六 七 合计
学院 姓名 学号 任课老师 考场教室__________选课号/座位号
………密………封………线………以………内………答………题………无………效……
D.可能存在多个推导及不同的语法树
9. 与编译系统相比,解释系统( )。 A.比较简单 , 可移植性好 , 执行速度快 B.比较复杂 , 可移植性好 , 执行速度快 C.比较简单 , 可移植性差 , 执行速度慢 D.比较简单 , 可移植性好 , 执行速度慢
10. 数组的内情向量中肯定不含有数组的( )的信息。 A.维数 B.类型 C.维上下界 D.各维的界差 得 分 二、填空题 (每空1分,共10分)
1. 下面的程序执行时输出的a分别是什么?若
(1) 参数的传递办法为\传值\,a为( ); (2) 参数的传递办法为\传地址\,a为( )。
program main (input,output); procedure p(x,y,z); begin
y∶=y+1; z∶=z+x; end; begin
a∶=2; b∶=3; p(a+b,a,a); print a end.
2. 一个对象(或事物)与其某种属性建立起某种联系的过程称为( )。 3. 虚拟机是由( )实现的机器。
4. 数据类型实质上是对存储器中所存储的数据进行的抽象。它包含了一组值的集合和一组
( )。
5. 传统语言的三种语句级控制结构为( )、( )和( 6. 在运行时,一个单元表示由一个代码段和一个( )组成,称为单元实例。 7. 对数据对象的类型和使用的操作是否匹配的一致性检查称为称为( )检查。
得 分 三、简答题( 共26分)
1.将下列语句翻译成中间代码(6分): While a>0 ∨ b<0 do
第 2 页 共 8 页
)。
学院 姓名 学号 任课老师 考场教室__________选课号/座位号
………密………封………线………以………内………答………题………无………效……
Begin
X:=X+1;
if a>0 then a:=a-1 else b:=b+1 End;
2. 数据类型聚合方式有几种?举例说明(6分)
3. 在抽象机GAM中,单元P运行结束后返回调用单元的3条指令如何实现?(
第 3 页 共 8 页
3分)
学院 姓名 学号 任课老师 考场教室__________选课号/座位号
………密………封………线………以………内………答………题………无………效……
4. 简述代码优化的目的和意义?(5分)
5. 对以下文法,求该文法的FIRST集和FOLLOW集。(6分)
S→eA | BA A→DB | ε B→dB | ε D→a | bd
S A B D 得 分 四、对以下文法(共10分)
S → AB | BaA A → bAbB | bABb | aB B → BaA | ab | ba
1、画出句型baaAaaab的语法树。(3分)
FIRST FOLLOW
第 4 页 共 8 页
学院 姓名 学号 任课老师 考场教室__________选课号/座位号
………密………封………线………以………内………答………题………无………效……
2、求句型baaAaaab的短语、直接短语、句柄、最左素短语。(7分) 短语: 直接短语: 句柄: 最左素短语:
得 分 五、对以下文法(共9分)
B → BoT | T T → TaF | F F → nF | ( B ) | t | f
1、 求该文法的FIRSTVT集和LASTVT集。 (3分) B T F FIRSTVT LASTVT
2、求该文法的算符优先关系表。 (5分) o a n ( ) t f # o a n ( ) t f #
3、该文法是算符优先文法吗?为什么? (1分)
第 5 页 共 8 页