北语21秋《编译原理》作业1[答案]答案
21秋《编译原理》作业1题目
试卷总分:100 得分:100
一、多选题 (共 5 道试题,共 20 分)
1.运行时的存储区常常划分为:( )
A.目标区
B.静态数据区
C.栈区
D.堆区
正确答案:-----
正确答案:-----
2.循环优化的重要技术有( )。
A.代码外提
B.删除归纳变量
C.强度削弱
D.局部优化
正确答案:-----
3.四元式是一种比较普遍采用的中间代码形式,它的四个组成成分是( )。
A.算法op
B.第一运算对象ARG1
C.第二运算对象ARG2
D.运算结果RESULT
正确答案:-----
4.在编译过程中,语法分析器的任务是( )。
A.分析单词是怎样构成的
B.分析单词串是如何构成语句和说明的
C.分析语句和说明是如何构成程序的
D.分析程序的结构
正确答案:-----
5.一个控制流程图可以表示成一个组,它包括( )。
A.图中所有结点集
B.图中所有有向边集
C.首结点
D.堆区
北语21秋《编译原理》作业1[答案]多选题答案
二、判断题 (共 20 道试题,共 80 分)
6.所谓数据空间的分配,本质上看,是将程序中的每个名字与一个存储位置关联起来,该存储位置用以容纳名字的值。
7.通常编译过程分成前端和后端,后端是由这样一些阶段组成:这些阶段的工作主要依赖于源语言而与目标机无关。
8.题目见图片{图}
9.计算机高级语言翻译成低级语言只有解释一种方式。( )
10.自底而上语法分析方法的主要问题是候选式的选择。( )
11.语法分析所依据的是语言的语法规则,即描述程序结构的规则。
12.一个多遍的编译程序可以较之一遍的编译程序少占内存。
13.一个确定有穷自动机有且只有一个终态。( )
14.一个分程序是一个含有它自己的局部数据(变量)声明的语句。
15.逆波兰记号是最简单的一种中间代码表示形式。
16.甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。( )
17.在编译方式下执行源程序,易于查错,在程序执行中可以修改程序,但执行效率低。
21.词法分析和语法分析本质上都是对源程序的结构进行分析。
19.题目见图片{图}
20.对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。( )
21.题目见图片{图}
22.程序设计语言中的布尔表达式只有一个作用,即用做改变控制流语句中的表达式。
23.题目见图片{图}
24.解释程序适用于 COBOL 和 FORTRAN 语言。( )
25.在解释方式下,解释程序将按照源程序中语句的动态顺序,逐句地进行分析解释,并立即予以执行。
北语21秋《编译原理》作业1[答案]历年参考题目如下:
大工19秋《编译原理基础》在线作业3
试卷总分:100 得分:100
一、判断题 (共 15 道试题,共 75 分)
1.编译器是一种翻译器,它的特点是目标语言比源语言低级。
2.语法树的子结点代表该运算的运算对象。
3.语义分析的一个重要部分是类型检查,编译器检查每个算符的运算对象,看它们的类型是否适当。
4.语言定义不允许运算对象的类型作隐式转换。
5.代码生成是指取源程序的一种中间表示作为输入并把它映射到一种目标语言。
6.符号表是为每个变量名字保存一个记录的数据结构,记录的域是该名字的属性。
7.解释器可以通过翻译来生成目标程序。
8.解释执行的效率比编译器生成的机器代码的执行效率高。
9.类型检查是一种捕捉程序中不一致性的成熟并且有效的技术。
10.类型检查技术不能用于捕捉多种安全漏洞。
11.词法分析器的任务是把构成源程序的字符流翻译成词法记号流。
12.词法分析难以发现源程序的错误,因为词法分析器对源程序采取非常局部的观点。
13.字母表上的串是该字母表符号的有穷序列。
14.术语语言表示字母表上的一个串集,属于该语言的串称为该语言的句子或字。
15.对于连接运算而言,空串是一个恒等元素。
二、单选题 (共 5 道试题,共 25 分)
16.( )不是编译程序的组成部分。
A.词法分析程序
B.代码生成程序
C.设备管理程序
D.语法分析程序
17.编译的各阶段工作都涉及( )。
A.符号表管理
B.词法分析
C.语法分析
D.语义分析
18.下面对编译程序分为“遍”描述正确的是( )。
A.使编译程序结构清晰
B.提高程序的执行效率
C.提高机器的执行效率
D.增加对内存容量的要求
19.词法分析器的输出是( )。
A.源程序
B.词法记号流
C.NFA
D.DFA
20.下列( )不是正规式a(a|b)*b所描述的串。
A.aabb
B.abb
C.aab
D.Aabbabba