资源描述
北航《编译技术》在线作业一(100)
一、 单选题(共 14 道试题, 共 56 分。)
1. 文法 G 产生( )全体是该文法描述语言。
A. 句型 B. 终止符集 C. 非终止符集 D. 句子
2. 编译程序诸阶段工作往往是( )。
A. 次序 B. 并行 C. 成批 D. 穿插
3. 假如r、 s是正规式, 则下面( )不一定是正规式。
A. rs B. r|s C. r* D. r+s
4. Σ={0, 1}上正规式(0|1)* 表示( )。
A. 0开头串 B. 1开头串 C. 有一个0和一个1串 D. 由0、 1组成任意串
5. 有限自动机有()个接收状态
A. 只能一个 B. 只能两个 C. 只能三个 D. 0个、 一个或多个
6. ()任务是从源代码中读取字符并形成由编译器以后部分处理逻辑单元——记号
A. 扫描程序 B. 语法分析程序 C. 语义分析程序 D. 源代码优化程序
7. 高级语言编译程序常见语法分析方法中, 递归下降分析法属于( )分析方法。
A. 自左至右 B. 自上而下 C. 自下而上 D. 自右向左
8. 编译程序中语法分析器接收以( )为单位输入。
A. 单词 B. 表示式 C. 产生式 D. 句子
9. 在语法分析处理中, FIRST集合、 FOLLOW集合、 SELECT集合均是( )。
A. 非终极符集 B. 终极符集 C. 字母表 D. 状态集
10. Chomsky 定义四种形式语言文法中, 1 型文法又称为( )文法。
A. 短语文法 B. 上下文无关文法 C. 上下文相关文法 D. 正规文法
11. 词法扫描程序把源代码生成为( )。
A. 记号流 B. 语法树 C. 词法树 D. 目标代码
12. 若文法G定义语言是无限集, 则文法肯定是( )。
A. 上下文无关文法 B. 正规文法 C. 二义性文法 D. 递归文法
13. 在自下而上语法分析方法中, 分析关键是( )。
A. 寻求句柄 B. 寻求句型 C. 消除递归 D. 选择候选式
14. 下述方法中, ( )不是自下而上分析方法。
A. 规范归约 B. 算符优先分析法 C. 递归下降分析法 D. LR分析法
二、 多选题(共 4 道试题, 共 16 分。)
1. 在以下上下文无关文法G中: stmt-sequence → stmt; stmt-sequence | stmt stmt → s 下面哪些是能够由该文法推导出句型?( )
A. stmt; stmt-sequence B. s C. s;s D. s;s;stmt
2. 栈式分配策略在( )情况下行不通。
A. 过程活动停止后, 局部名字值还必需维持
B. 被调用者活动比调用者活动活得更长, 此时活动树不能正确描绘程序控制流
C. 不遵守栈式规则有Pascal语言和C语言动态变量
D. Java严禁程序员自己释放空间
3. 下面语言特征会影响存放分配策略是( )。
A. 过程能否递归 B. 当控制从过程活动返回时, 局部变量值是否要保留
C. 过程能否访问非局部变量 D. 过程调用参数传输方法
4. 栈式分配策略在下列哪些情况下行不通?()
A. 过程活动停止后, 局部名字值还必需维持
B. 被调用者活动比调用者活动活得更长, 此时活动树不能正确描绘程序控制流
C. 不遵守栈式规则有Pascal语言和C语言动态变量
D. Java严禁程序员自己释放空间
三、 判定题(共 7 道试题, 共 28 分。)
1. 每个文法都能改写为LL(1)文法。 ( )
A. 错误 B. 正确
2. 解释程序是在翻译完成以后生成目标代码, 然后实施目标代码。( )
A. 错误 B. 正确
3. 仅考虑一个基础块, 不能确定一个赋值是否真是无用。 ( )
A. 错误 B. 正确
4. LL(1)分析必需对原有文法提取左因子和消除左递归。( )
A. 错误 B. 正确
5. 目标代码生成时, 应考虑怎样充足利用计算机寄存器问题。 ( )
A. 错误 B. 正确
6. 语义分析任务包含两方面, 一个是静态语义检验, 一个是动态语义解释实施并生成中间代码。 ( )
A. 错误 B. 正确
7. 上下文无关文法也叫正规文法。 ( )
A. 错误 B. 正确
北航《编译技术》在线作业二(100)
一、 单选题(共 14 道试题, 共 56 分。)
1. 赋值语句X::=-(a+b)/(c-d)-(a+b*c)r逆波兰表示是 ( )。
A. Xab+cd-/-bc*a+-:= B. Xab+/cd--bc*a+--:= C. Xab+-cd-/abc*+-:= D. Xab+cd-/abc*+--:=
2. 有限自动机( )个接收状态。
A. 只能有一个 B. 只能有两个 C. 只能有三个 D. 能够有0个、 一个或多个
3. 在LR分析法中, 分析栈中存放状态是识别规范句型( )DFA状态。
A. 句柄 B. 前缀 C. 活前缀 D. LR(0)项目
4. 下述方法中, ( )不是自下而上分析方法。
A. 规范归约 B. 算符优先分析法 C. 递归下降分析法 D. LR分析法
5. 编译器与要编译源程序接口阶段是( )。
A. 扫描程序 B. 语法分析程序 C. 语义分析程序 D. 代码生成器
6. 最常见中间代码形式是( )。
A. 二元式 B. 三元式 C. 四元式 D. 树形表示
7. 词法分析器输出是( )。
A. 字符串 B. 二元式 C. 三元式 D. 四元式
8. 文法 G 产生( )全体是该文法描述语言。
A. 句型 B. 终止符集 C. 非终止符集 D. 句子
9. 在语法分析处理中, FIRST集合、 FOLLOW集合、 SELECT集合均是( )。
A. 非终极符集 B. 终极符集 C. 字母表 D. 状态集
10. 下面优化项目中, 不属于循环优化是( )。
A. 不变运算外提 B. 减弱运算强度 C. 消除归纳变量 D. 合并已知运算
11. 假如r、 s是正规式, 则下面( )不一定是正规式。
A. rs B. r|s C. r* D. r+s
12. 下面哪个文法含有二义性( )。
A. A→AA | (A) | B. E→E+T|T C. E→(E) D. E→a
13. 最适合动态建立数据实体内存分配方法是( )。
A. 栈式分配 B. 堆式分配 C. 编译时预先分配 D. 以上三种均可
14. 高级语言编译程序常见语法分析方法中, 递归下降分析法属于( )分析方法。
A. 自左至右 B. 自上而下 C. 自下而上 D. 自右向左
二、 多选题(共 4 道试题, 共 16 分。)
1. 文法符号语义属性有( )。
A. 综合属性 B. 继承属性 C. 符号属性 D. 数字属性
2. 下面哪些语言特征会影响存放分配策略?()
A. 过程能否递归 B. 当控制从过程活动返回时, 局部变量值是否要保留
C. 过程能否访问非局部变量 D. 过程调用参数传输方法
3. 下面哪些属于静态检验?()
A. 类型检验 B. 控制流检验 C. 唯一性检验 D. 关联名字检验
4. ( )三个阶段合称为对源程序进行综合, 它们从源程序中间表示建立起和源程序等价目标程序。
A. 中间代码生成 B. 代码优化 C. 代码生成 D. 代码删除
三、 判定题(共 7 道试题, 共 28 分。)
1. 符号表管理和犯错管理是编译过程中两项关键工作。( )
A. 错误 B. 正确
2. 算符优先分析法只能识别由算符优先文法描述句子。( )
A. 错误 B. 正确
3. 解释程序与编译程序不一样指出在于: 它立刻实施源程序而不是生成在翻译完成以后才实施目标代码。( )
A. 错误 B. 正确
4. 语义分析任务包含两方面, 一个是静态语义检验, 一个是动态语义解释实施并生成中间代码。 ( )
A. 错误 B. 正确
5. 逆波兰法表示表示式亦称前缀式。 ( )
A. 错误 B. 正确
6. 算符优先分析法采取"移近-归约"技术,其归约过程是规范。( )
A. 错误 B. 正确
7. 扫描程序任务是完成定义程序结构语法分析。 ( )
A. 错误 B. 正确
北航《编译技术》在线作业三(100)
一、 单选题(共 14 道试题, 共 56 分。)
1. 词法分析器输出是( )。
A. 字符串 B. 二元式 C. 三元式 D. 四元式
2. 把一个高级语言程序翻译成机器可实施目标程序工作由( )完成。
A. 汇编程序 B. 解释程序 C. 编译程序 D. 预处理程序
3. 有限自动机( )个接收状态。
A. 只能有一个 B. 只能有两个 C. 只能有三个 D. 能够有0个、 一个或多个
4. 在编译各阶段中, 和目标机器关系最为亲密是( )。
A. 词法分析 B. 语法分析 C. 语义分析 D. 目标代码生成
5. 有限自动机能够有( )个初始状态。
A. 一个 B. 两个 C. 三个 D. 多个
6. ( )阶段检验程序语义正确性, 以确保程序各部分能有意义地结合在一起, 并为以后代码生成阶段搜集类型信息。
A. 语法分析 B. 词法分析 C. 语义分析 D. 中间代码生成
7. 简单优先分析每次规约是( )。
A. 最左短语 B. 直接短语 C. 句柄 D. 最左素短语
8. ( )是为每个标识符保留一个统计数据结构, 统计域是标识符属性。
A. 符号表 B. 代码表 C. 源程序 D. 犯错表
9. 一个文法所描述语言是( )。
A. 唯一 B. 不唯一 C. 可能唯一 D. 可能不唯一
10. 代码生成属于编译器()
A. 语义分析 B. 分析 C. 代码生成 D. 综合
11. 高级语言编译程序常见语法分析方法中, 递归下降分析法属于( )分析方法。
A. 自左至右 B. 自上而下 C. 自下而上 D. 自右向左
12. ( )负责分析程序语法结构。
A. 扫描程序 B. 语法分析程序 C. 语义分析程序 D. 代码生成程序
13. 文法 G 产生( )全体是该文法描述语言。
A. 句型 B. 终止符集 C. 非终止符集 D. 句子
14. 正规式(a|b)*表示是( )。
A. 全部由字母a或b组成串 B. 字符串a|b C. 字符串(a|b)* D. 空串
二、 多选题(共 4 道试题, 共 16 分。)
1. 相关栈式分配, 下面说法正确地是( )。
A. 属于动态分配 B. 属于静态分配
C. 适适用于可递归调用、 含有分程序结构语言 D. 不适适用于可递归调用语言
2. 下面哪些语言特征会影响存放分配策略?()
A. 过程能否递归 B. 当控制从过程活动返回时, 局部变量值是否要保留
C. 过程能否访问非局部变量 D. 过程调用参数传输方法
3. 以下哪些属于计算机存放器()
A. 寄存器区域 B. 访问存放器 C. 代码区 D. 数据区
4. 以下属于计算机存放器是( )。
A. 寄存器区域 B. 访问存放器 C. 代码区 D. 数据区
三、 判定题(共 7 道试题, 共 28 分。)
1. 一张转换图只包含有限个状态, 其中有一个被认为是初态, 最多只有一个终态。 ( )
A. 错误 B. 正确
2. 目标代码生成时, 应考虑怎样充足利用计算机寄存器问题。 ( )
A. 错误 B. 正确
3. 上下文无关文法也叫正规文法。 ( )
A. 错误 B. 正确
4. 文法S→aA;A→Ab;A→b是LR(0)文法(S为文法开始符号)。( )
A. 错误 B. 正确
5. 有限自动机能够识别上下文无关语言。 ( )
A. 错误 B. 正确
6. 文法二义并不代表语言一定是二义。只有当产生一个语言全部文法都是二义时, 这个语言才是二义。 ( )
A. 错误 B. 正确
7. 编译器是将一个语言翻译为另一个语言计算机程序。( )
A. 错误 B. 正确
展开阅读全文