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

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

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


一、单选题(共 25 道试题,共 50 分。)
1.下列选项中,不属于优化编译程序提供的对代码的各种变换必须遵循的原则的是( )。
A. 等价原则
B. 有效原则
C. 最佳原则
D. 合算原则

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

3.下述方法中,( )不是自下而上分析方法。
A. 规范归约
B. 算符优先分析法
C. 递归下降分析法
D. LR分析法

4.Σ={0,1}上的正规式(0|1)* 表示( )。
A. 0开头的串
B. 1开头的串
C. 有一个0和一个1的串
D. 由0、1组成的任意串
此题选: D
5.规范归约(最左归约-最右推导的逆过程)的关键问题是( )。
A. 确定符号表
B. 寻找单词
C. 寻找句柄
D. 定位错误

6.高级语言编译程序常用的语法分析方法中,递归下降分析法属于( )分析方法。
A. 自左至右
B. 自上而下
C. 自下而上
D. 自右向左

7.Pascal的if语句满足( )。
A. 最远匹配原则
B. 动态作用域规则
C. 静态作用域规则
D. 最近匹配原则
此题选: D
8.最适合动态建立数据实体的内存分
A. 栈式分配
B. 堆式分配
C. 编译时预先分配
D. 以上三种均可

9.在编译程序使用的表格中,最重要的是( )。
A. 数据表
B. 信息表
C. 变量表
D. 符号表
此题选: D
10.下面关于解释程序的描述正确的是( )。 (1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的
A. (1)(2)
B. (1)
C. (1)(2)(3)
D. (2)(3)

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

12.在编译的各阶段中,和目标机器关系最为密切的是( )。
A. 词法分析
B. 语法分析
C. 语义分析
D. 目标代码生成
此题选: D
13.最常用的中间代码形式是( )
A. 二元式
B. 三元式
C. 四元式
D. 树型

14.一个结点相应的文法符号属性值是由该结点兄弟结点和/或父节点的相应的文法符号的属性值来计算,按这种情况计算的属性值叫做( )。
A. 综合属性
B. 继承属性
C. 自然属性
D. 赋值属性

15.在编译程序使用的表格中,最重要的是( )。
A. 数据表
B. 信息表
C. 变量表
D. 符号表
此题选: D
16.( )是描述语言的语法结构的形式规则。
A. 文法
B. 语义
C. 词法
D. 语法

17.规范归约(最左归约-最右推导的逆过程)的关键问题是( )。
A. 确定符号表
B. 寻找单词
C. 寻找句柄
D. 定位错误

18.LR(1)文法都是( )。
A. 无二义性且无左递归
B. 可能有二义性但无左递归
C. 无二义性但可能是左递归
D. 可以既有二义性又有左递归

19.正则文法( )二义性的。
A. 可以是
B. 一定不是
C. 一定是
D. 可以不是

20.如果r、s是正规式,则下面( )不一定是正规式。
A. rs
B. r|s
C. r*
D. r+s
此题选: D
21.文法 E→(E)产生的语言是( )。
A. 空集
B. ()
C. (E)
D. ((((E))))

22.描述一个语言的文法是( )。
A. 唯一的
B. 不唯一的
C. 可能唯一
D. 可能不唯一

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

24.有限自动机( )个接受状态。
A. 只能有一个
B. 只能有两个
C. 只能有三个
D. 可以有0个、一个或多个
此题选: D
25.语法分析器的输出是( )。
A. 源程序
B. 单词符号
C. 语法单位
D. 中间代码




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


二、多选题(共 5 道试题,共 20 分。)
1.根据不同的用途和侧重,编译程序可分为( )。
A. 诊断编译程序
B. 优化编译程序
C. 交叉编译程序
D. 可变目标编译程序

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

3.编译器中常用的文法分析有( )。
A. 自上而下分析算法
B. 自下而上分析算法
C. Earley算法
D. Cocke-Younger-Kassimi算法

4.从语言范型分类,当今的大多数程序设计语言可划分为( )。
A. 强制式语言
B. 应用式语言
C. 基于规则的语言
D. 面向对象语言

5.在下述的编译方法中,自上而下的分析方法有( )。 ①简单优先分析 ②算符优先分析 ③递归下降分析 ④预测分析技术 ⑤LR(K)分析 ⑥ SLR(K)分析 ⑦ LL(K)分析 ⑧LALR(K)分析
A. ③④⑦
B. ③④⑧
C. ①②⑧
D. ③④⑤⑥⑦




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


三、判断题(共 10 道试题,共 30 分。)
1.LL(1)分析必须对原有文法提取左因子和消除左递归。
A. 错误
B. 正确

2.在规范规约中用最左素短语来刻划可归约串。
A. 错误
B. 正确

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

4.文法二义并不代表语言一定是二义的。只有当产生一个语言的所有文法都是二义的时,这个语言才是二义的。
A. 错误
B. 正确

5.一张转换图只包含有限个状态,其中有一个被认为是初态,最多只有一个终态。
A. 错误
B. 正确

6.算符优先分析法只能识别由算符优先文法描述的句子。
A. 错误
B. 正确

7.解释程序与编译程序的不同指出在于:它立即执行源程序而不是生成在翻译完成之后才执行的目标代码
A. 错误
B. 正确

8.语义分析的任务包括两方面,一个是静态语义检查,一个是动态语义的解释执行并生成中间代码。
A. 错误
B. 正确

9.对于一个无二义性的文法,一棵语言树往往代表了多种最左推导过程。
A. 错误
B. 正确

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






版权声明

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

分享: