12秋北京交通大学《编译原理》在线作业二

所属学校:北京交通大学 科目:编译原理 2015-03-11 13:26:54

北交《编译原理》在线作业二
试卷总分:100
单选题 多选题 判断题


一、单选题(共 25 道试题,共 50 分。)
1.高级语言编译程序常用的语法分析方法中,递归下降分析法属于( )分析方法。
A. 自左至右
B. 自上而下
C. 自下而上
D. 自右向左

2.Σ={0,1}上的正规式(0|1)* 表示( )。
A. 0开头的串
B. 1开头的串
C. 有一个0和一个1的串
D. 由0、1组成的任意串
此题选: D
3.词法分析器的输出是( )。
A. 单词符号
B. 二元式
C. 三元式
D. 四元式

4.语义分析与中间代码产生所依循的是( )。
A. 正规式
B. 上下文无关文法
C. 语言的语义规则
D. 有限自动机

5.编译程序必须完成的工作有( ) 。 (1) 词法分析 (2) 语法分析 (3) 语义分析 (4) 目标代码生成 (5) 中间代码生成 (6) 代码优化
A. (1)(2)(3)(4)
B. (1)(2)(3)(4)(5)
C. (1)(2)(3)(4)(5)(6)
D. (1)(2)(3)(4)(6)

6.Pascal的if语句满足( )。
A. 最远匹配原则
B. 动态作用域规则
C. 静态作用域规则
D. 最近匹配原则
此题选: D
7.语法分析器的输出是( )。
A. 源程序
B. 单词符号
C. 语法单位
D. 中间代码

8.有限自动机可以有( )个初始状态。
A. 一个
B. 两个
C. 三个
D. 多个

9.下面哪个文法是左递归的( )。
A. E→E+T|T
B. T→F*T
C. E→(E)
D. E→a

10.已知文法:S→aAa|aBb|bAb|bBaA→x B→x ,则( )
A. LR(1)文法
B. LALR(1)文法
C. 都不是
D. A和B

11.( )的任务是把中间代码(或经过优化处理之后)变换成特定机器上的低级语言代码。
A. 词法分析
B. 语法分析
C. 优化
D. 目标代码生成
此题选: D
12.一个结点相应的文法符号属性值是由该结点兄弟结点和/或父节点的相应的文法符号的属性值来计算,按这种情况计算的属性值叫做( )。
A. 综合属性
B. 继承属性
C. 自然属性
D. 赋值属性

13.( )是指源程序中不符合语义规则的错误,这些错误一般在语义分析时能检测出来。
A. 语义错误
B. 语法错误
C. 短语错误
D. 短句错误

14.下列关于语法树的描述中,错误的是( )。
A. 语法树的根结由开始符号所标记
B. 一棵语法树表示了一个句型所有的不同推导过程
C. 一棵语法树是不同推导过程的共性抽象,是它们的代表
D. 一个句型不是只有唯一的一棵语法树

15.( )是描述语言的语法结构的形式规则。
A. 文法
B. 语义
C. 词法
D. 语法

16.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括( )。
A. 模拟执行器
B. 解释器
C. 表格处理和出错处理
D. 符号执行器

17.在自下而上的语法分析方法中,分析的关键是( )。
A. 寻找句柄
B. 寻找句型
C. 消除递归
D. 选择候选式
此题选: D
18.由于受到具体机器主存容量的限制,编译程序几个不同阶段的工作往往被组合成( )。
A. 过程
B. 程序
C. 批量
D. 遍
此题选: D
19.( )是指源程序中不符合语法或词法规则的错误,这些错误一般在词法分析或语法分析时能检测出来。
A. 语义错误
B. 语法错误
C. 短语错误
D. 短句错误

20.表达式(a+b)*(c+d)的后缀式表示为( )。
A. a+b*c+d
B. +ab*+cd
C. ab+cd+*
D. 无法表示

21.最常用的中间代码形式是( )
A. 二元式
B. 三元式
C. 四元式
D. 树型

22.在语法分析处理中,FIRST集合、FOLLOW集合、SELECT集合均是( )。
A. 非终结符集
B. 终结符集
C. 字母集
D. 状态集

23.2型文法也称为( )。
A. 短语文法
B. 上下文无关文法
C. 右线性文法
D. 左性性文法

24.在编译程序使用的表格中,最重要的是( )。
A. 数据表
B. 信息表
C. 变量表
D. 符号表
此题选: D
25.文法G的一棵语法树叶结点的自左至右排列是G的一个( )。
A. 句子
B. 句型
C. 句柄
D. 素短语




北交《编译原理》在线作业二
试卷总分:100
单选题 多选题 判断题


二、多选题(共 5 道试题,共 20 分。)
1.常见的代码优化包括( )。
A. 常量合并
B. 公共子表达式删除
C. 复写传播
D. 死代码删除

2.静态语义检查通常包括( )。
A. 类型检查
B. 控制流检查
C. 一致性检查
D. 相关名字检查

3.在编译时安排所有数据对象的存储单元的分配策略属于( )。
A. 静态分配策略
B. 栈式分配策略
C. 堆分配策略
D. 动态分配策略

4.根据不同的用途和侧重,编译程序可分为( )。
A. 诊断编译程序
B. 优化编译程序
C. 交叉编译程序
D. 可变目标编译程序

5.常用的中间代码表示形式有( )。
A. 三元式
B. 四元式
C. 间接三元式
D. 逆波兰记号




北交《编译原理》在线作业二
试卷总分:100
单选题 多选题 判断题


三、判断题(共 10 道试题,共 30 分。)
1.符号表管理和出错管理是编译过程中的两项重要工作。
A. 错误
B. 正确

2.目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。
A. 错误
B. 正确

3.我们可以概括地认为中间代码是编译器使用的源代码的任何一个内部表示。
A. 错误
B. 正确

4.算符优先分析法采用"移近-归约"技术,其归约过程是规范的。
A. 错误
B. 正确

5.编译器通常包括许多代码改进或优化步骤。
A. 错误
B. 正确

6.文法G的一个句子对应于多个推导,则G是二义的。
A. 错误
B. 正确

7.如果有的文法的一些句子有不止一种推导过程,则该文法具有二义性。
A. 错误
B. 正确

8.逆波兰法表示的表达式亦称前缀式。
A. 错误
B. 正确

9.算符优先关系表不一定存在对应的优先函数。
A. 错误
B. 正确

10.文法的二义性和语言的二义性是两个不同的概念。
A. 错误
B. 正确






版权声明

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系本站我们将配合处理!

分享: