|
一、单选题(共 15 道试题,共 75 分。)V 1. 编译程序中的语法分析器接受以()为单位的输入,并产生有关信息供以后各阶段使用。
A. 表达式
B. 产生式
C. 单词
D. 语句
满分:5 分
2. 一个文法所描述的语言是()。
A. 唯一的
B. 不唯一的
C. 可能唯一
D. 可能不唯一
满分:5 分
3. SLR(1)分析法的名字中,“R”的含义是()。
A. 自左向右进行分析
B. 自右向左进行分析
C. 采用最右推导的逆过程——最左归约
D. 采用最左推导的逆过程——最右归约。
满分:5 分
4. 己知文法G[S]:S->eT|RT,T->DR|ε,R->dR|ε,D->a|bd。FIRST(D)=()。
A. {d,ε}
B. {a, b, d, e,ε}
C. {a,b}
D. {a,b,#}
E. {a,b,ε}
F. {#}
满分:5 分
5. 算符文法是指()的文法。①没有形如U::=...VW...的规则(U,V,W ∈VN)②终结符号集VT中任意两个符号对之间至多有一种优先关系成立③没有相同的规则右部④没有形如U::= ε的规则。
A. ①
B. ①②
C. ①②③
D. ①②③④
满分:5 分
6. 在规范归约中,用()来刻画可归约串。
A. 直接短语
B. 句柄
C. 最左素短语
D. 素短语
满分:5 分
7. 语法分析常用的方法有()①自顶向下 ②自底向上 ③自左向右 ④自右向左
A. ①②③④
B. ①②
C. ③④
D. ①②③
满分:5 分
8. 代码优化的目的是加快()的执行速度。
A. 编译程序
B. 目标程序
C. 源程序
D. 编译程序和目标程序
E. 解释程序
满分:5 分
9. 若a为终结符,则A→α•aβ为()项目。
A. 归约
B. 移进
C. 接受
D. 待约
满分:5 分
10. 对下列错误信息,请指出可能是编译的哪个阶段,使用的函数没有定义对应()。
A. 语法分析
B. 语义分析
C. 词法分析
D. 词义分析
满分:5 分
11. 文法G:S→xSx|y所识别的语言是()。
A. xyx
B. (xyx)*
C. xnyxn(n≥0)
D. x*yx*
满分:5 分
12. SLR(1)分析法的名字中,“S”的含义是()。
A. 简单的
B. 自左向右进行分析
C. 自右向左进行分析
D. 相似的
满分:5 分
13. 在编译程序中,语法分析分为自顶向下分析和自底向上分析两类:自顶向下分析试图为输入符号串构造一个()。
A. 语法树
B. 有向无环图
C. 最左推导
D. 最右推导
满分:5 分
14. 如果文法G是无二义的,则它的任何句子α()。
A. 最左推导和最右推导对应的语法树必定相同
B. 最左推导和最右推导对应的语法树可能不同
C. 最左推导和最右推导必定相同
D. 可能存在两个不同的最左推导,但它们对应的语法树相同
满分:5 分
15. LR(K)方法是()。
A. 从左到右分析,每次走K步的一种编译方法
B. 从左到右分析,共经过K步的一种编译方法
C. 从左到右分析,每次向前预测K步的一种编译方法
D. 从左到右分析,每次向貌似句柄的符号串后看K个输入符号的一种编译方法
满分:5 分
二、多选题(共 3 道试题,共 15 分。)V 1. 按所涉及的程序范围可分为哪几级优化?
A. 局部优化
B. 循环优化
C. 全局优化
D. 回溯优化
满分:5 分
2. 目标代码有哪几种形式?
A. 机器语言
B. 汇编语言
C. 高级语言
D. 待装配机器语言模块
满分:5 分
3. 计算机执行用高级语言编写的程序有哪些途径?
A. 链接
B. 汇编
C. 解释
D. 编译
满分:5 分
三、判断题(共 5 道试题,共 10 分。)V 1. 仅考虑一个基本块,不能确定一个赋值是否真是无用的。
A. 错误
B. 正确
满分:2 分
2. 文法 S->S(S)S|ε,该文法无二义性。
A. 错误
B. 正确
满分:2 分
3. 所谓最右推导是指:任何一步αβ都是对α中最右非终结符进行替换的。
A. 错误
B. 正确
满分:2 分
4. 编译程序是通过它能够将用高级语言编写的源程序转换成与之在逻辑上等价的低级语言形式的目标程序。
A. 错误
B. 正确
满分:2 分
5. 自顶向下语法分析方法会遇到的主要问题有回溯和(左递归带来的)无限循环。
A. 错误
B. 正确
满分:2 分 |
|