《编译原理》15春在线作业1
一、单选题(共 15 道试题,共 60 分。)
1. 一般程序设计语言的定义都涉及()三个方面。 1)语法2)语义3)语用4)程序基本符号的确定
A. 1)2)3) B. 1)2)4) C. 1)3)4) D. 2)3)4) 正确答案:A
2. 正规式 M 1 和 M 2 等价是指_____。 A. M1和M2的状态数相等 B. M1和M2的有向边条数相等 C. M1和M2所识别的语言集相等
D. M1和M2状态数和有向边条数相等 正确答案:C
3. 在程序流图中,我们称具有下述性质()的结点序列为一个循环。 A. 它们是非连通的且只有一个入口结点 B. 它们是强连通的但有多个入口结点 C. 它们是非连通的但有多个入口结点 D. 它们是强连通的且只有一个入口结点 正确答案:D
4. PL/0语言编译程序使用递归子程序法进行语法分析,他的文法必须满足() A. LL(1)文法 B. SLR(1)文法 正确答案:A
5. 编译程序使用_____区别标识符的作用域。 A. 说明标识符的过程或函数名
B. 说明标识符的过程或函数的静态层次 C. 说明标识符的过程或函数的动态层次 D. 标识符的行号 正确答案:B
6. 堆式动态分配申请和释放存储空间遵守_____原则。 A. 先请先放 B. 先请后放 C. 后请先放 D. 任意
正确答案:D
7. 在下述的编译方法中,自底向上的方法有( ) ①简单优先分析 ②算符优先分析 ③递归下降分析 ④预测分析技术 ⑤LR(K)分析 ⑥ SLR(k)分析 ⑦ LL(k)分析 ⑧LALR(K)分析 A. ③④⑦ B. ③④⑧ C. ①②⑧
D. ①②⑤⑥⑧ 正确答案:D
8. 由于受到具体机器主存容量的限制,编译程序几个不同阶段的工作往往被组合成. A. 过程 B. 程序 C. 批量 D. 遍
正确答案:D
9. 代码代码优化的目的是() A. 节省时间 B. 节省空间
C. 节省时间和空间
D. 把编译程序进行等价交换 正确答案:C
10. 若文法 G 定义的语言是无限集,则文法必然是 _____。 A. 递归的
B. 前后文无关的 C. 二义性的 D. 无二义性的 正确答案:A
11. 编译原理各阶段工作都涉及() A. 词法分析 B. 表格管理 C. 语法分析 D. 语义分析 正确答案:B
12. 下面说法正确的是( )
A. Lex是一个词法分析器的生成器 B. Yacc是一个语法分析器 正确答案:A
13. 程序所需的数据空间在程序运行前就可确定,称为()管理技术。 A. 动态存储 B. 栈式存储 C. 静态存储 D. 堆式存储 正确答案:C
14. 同正则表达式a*b*等价的文法是()
A. G1→aS|bS|ε B. G2:S→aSb|ε C. G3:S→aS|Sb|ε D. G4:S→abS|ε 正确答案:C
15. 编译程序绝大多数时间花在____上。 A. 出错处理 B. 词法分析 C. 目标代码生成 D. 管理表格 正确答案:D
《编译原理》15春在线作业1
二、判断题(共 10 道试题,共 40 分。)
1. 最左归约也称为规范归约。 A. 错误 B. 正确
正确答案:B
2. 逆波兰法表示的表达式亦称前缀式 。 A. 错误 B. 正确
正确答案:B
3. 树形表示和四元式不便于代码优化,而三元式和间接三元式则便于代码优化。 A. 错误 B. 正确
正确答案:A
4. 一个算符优先文法可能不存在算符优先函数与之对应。 A. 错误 B. 正确
正确答案:B
5. 对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。 A. 错误 B. 正确
正确答案:A
6. 符号表中的信息栏中登记了每个名字的属性和特征等有关信息,如类型、种属、所占单元大小、地址等等。 A. 错误