作业答案 发表于 2017-4-24 17:07:01

北语17春《编译原理》在线作业4321满分答案

北语17春《编译原理》在线作业4

一、单选题:
二、多选题:
1.一个算符优先文法可能不存在算符优先函数与之对应。(    )          (满分:5)
    A. 错误
    B. 正确
2.循环优化是对循环中的代码进行的优化。          (满分:5)
    A. 错误
    B. 正确
三、判断题:
3.一个文法所有句子的集合构成该文法定义的语言。(    )          (满分:5)
    A. 错误
    B. 正确
4.所谓基本块是指程序中一个顺序执行的语句序列,其中只有一个入口语句和一个出口语句。          (满分:5)
    A. 错误
    B. 正确
5.正则文法其产生式为 A->a , A->Bb,A,B∈VN , a 、 b∈VT 。(    )          (满分:5)
    A. 错误
    B. 正确
6.在程序中标识符的出现仅为使用性的。(    )          (满分:5)
    A. 错误
    B. 正确
7.优化可在编译的不同阶段进行。          (满分:5)
    A. 错误
    B. 正确
8.根据优化所涉及的程序范围,可分成局部优化,全局优化2个不同的级别。          (满分:5)
    A. 错误
    B. 正确
9.有两类重要的局部等价可用于基本块,它们是保结构的变换和代数变换。          (满分:5)
    A. 错误
    B. 正确
10.一个正规语言可以由正规文法定义,也可以由正规式定义。          (满分:5)
    A. 错误
    B. 正确
11.最左归约也称为规范归约。(    )          (满分:5)
    A. 错误
    B. 正确
12.在中间代码优化中循环上的优化主要有不变表达式外提和削减运算强度。(    )          (满分:5)
    A. 错误
    B. 正确
13.当参数通过引用传递时,也称作传地址,或者引用调用。          (满分:5)
    A. 错误
    B. 正确
14.优先分析法可以分成简单优先分析法和算符优先分析法。          (满分:5)
    A. 错误
    B. 正确
15.当一个过程调用其他过程时,调用过程和被调用过程之间的通信经由局部量或者经由参数传递。          (满分:5)
    A. 错误
    B. 正确
16.全局优化是在整个程序范围内进行的优化。          (满分:5)
    A. 错误
    B. 正确
17.强度削弱的思想是把强度大的运算换算成强度小的运算。          (满分:5)
    A. 错误
    B. 正确
18.目标代码的优化是在目标代码生成以后进行的。          (满分:5)
    A. 错误
    B. 正确
1.循环优化的重要技术有(    )。          (满分:5)
    A. 代码外提
    B. 删除归纳变量
    C. 强度削弱
    D. 局部优化
2.数据空间的使用和管理方法分成(    )。          (满分:5)
    A. 静态存储分配
    B. 栈式动态存储分配
    C. 堆式动态存储分配
    D. 局部存储分配
17春《编译原理》作业3

一、单选题:
二、多选题:
1.运行时的存储区常常划分为:(    )          (满分:4)
    A. 目标区
    B. 静态数据区
    C. 栈区
    D. 堆区
2.编译中的语义处理是指(    )两个功能。          (满分:4)
    A. 审查每个语法结构的静态语义
    B. 生成程序的一种中间表示形式(中间代码),或者生成实际的目标代码
    C. 分析栈
    D. 向前搜索符集合
3.一个LR分析器由(    )组成。          (满分:4)
    A. 驱动程序
    B. 分析函数
    C. 分析栈
    D. 向前搜索符集合
4.四元式是一种比较普遍采用的中间代码形式,它的四个组成成分是(    )。          (满分:4)
    A. 算法op
    B. 第一运算对象ARG1
    C. 第二运算对象ARG2
    D. 运算结果RESULT
5.一个LR(1) 项目可以看成(    )两个部分组成。          (满分:4)
    A. 心
    B. 向前搜索符集合
    C. 分析表
    D. 分析函数
三、判断题:
1.对所有的LR分析器总控程序都是相同的。          (满分:4)
    A. 错误
    B. 正确
2.算符优先关系表不一定存在对应的优先函数。(    )          (满分:4)
    A. 错误
    B. 正确
3.程序设计语言中的布尔表达式只有一个作用,即用做改变控制流语句中的表达式。          (满分:4)
    A. 错误
    B. 正确
4.出口语句是一种结构化的方式跳出循环而设置的语句,它的作用是引起外层循环的终止。          (满分:4)
    A. 错误
    B. 正确
5.堆栈区用以存放编译时能确定所占用空间的数据。          (满分:4)
    A. 错误
    B. 正确
6.若一个句型中出现了某产生式的右部,则此右部一定是该句型的句柄。(    )          (满分:4)
    A. 错误
    B. 正确
7.任何一个二义性文法一定不是LR类文法,也不是一个算符优先文法。          (满分:4)
    A. 错误
    B. 正确
8.编译程序的任务是把源程序翻译成目标程序,二者要求语义等同。          (满分:4)
    A. 错误
    B. 正确
9.一个数组是由同一类型数据所组成的某种n维矩形结构。          (满分:4)
    A. 错误
    B. 正确
10.若过程p第k次被调用,则p的DISPLAY表中就有k+1个元素。          (满分:4)
    A. 错误
    B. 正确
11.一个分程序是一个含有它自己的局部数据(变量)声明的语句。          (满分:4)
    A. 错误
    B. 正确
12.LR(1)分析表构造的思想和方法是构造其他LR分析表的基础。          (满分:4)
    A. 错误
    B. 正确
13.过程调用的实质是把程序控制转移到子程序(过程段)。          (满分:4)
    A. 错误
    B. 正确
14.逆波兰记号是最简单的一种中间代码表示形式。          (满分:4)
    A. 错误
    B. 正确
15.后缀表示法表示表达式,其最大的优点是便于计算机处理表达式。          (满分:4)
    A. 错误
    B. 正确
16.逆波兰表示法表示表达式时无需使用括号。(    )          (满分:4)
    A. 错误
    B. 正确
17.如果一个数组所需要的存储空间的大小在编译时就已知道,则称此数组是动态数组。          (满分:4)
    A. 错误
    B. 正确
18.一个句型的句柄一定是文法某产生式的右部。(    )          (满分:4)
    A. 错误
    B. 正确
19.每个文法都能改写为 LL(1) 文法。(    )          (满分:4)
    A. 错误
    B. 正确
20.一个确定有穷自动机有且只有一个终态。(    )          (满分:4)
    A. 错误
    B. 正确
17春《编译原理》作业2

一、单选题:
1.词法分析器用于识别(    )。          (满分:5)
    A. 字符串
    B. 语句
    C. 单词
    D. 标识符
二、多选题:
1.题目见图片          (满分:5)
    A.(A)
    B.(B)
    C.(C)
    D.(D)
    E.(E)
    F.
2.题目见图片          (满分:5)
    A.(A)
    B.(B)
    C.(C)
    D.(D)
    E.(E)
    F.
三、判断题:
1.对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。(    )          (满分:5)
    A. 错误
    B. 正确
2.递归下降分析法是自顶向上分析方法。(    )          (满分:5)
    A. 错误
    B. 正确
3.题目见图片          (满分:5)
    A. 错误
    B. 正确
4.仅考虑一个基本块,不能确定一个赋值是否真是无用的。(    )          (满分:5)
    A. 错误
    B. 正确
5.非终结符可以有综合属性,但不能有继承属性。(    )          (满分:5)
    A. 错误
    B. 正确
6.进行代码优化时应着重考虑循环的代码优化,这对提高目标代码的效率将起更大作用。(    )          (满分:5)
    A. 错误
    B. 正确
7.题目见图片          (满分:5)
    A. 错误
    B. 正确
8.静态数组的存储空间可以在编译时确定。(    )          (满分:5)
    A. 错误
    B. 正确
9.计算机高级语言翻译成低级语言只有解释一种方式。(    )          (满分:5)
    A. 错误
    B. 正确
10.题目见图片          (满分:5)
    A. 错误
    B. 正确
11.题目见图片          (满分:5)
    A. 错误
    B. 正确
12.题目见图片          (满分:5)
    A. 错误
    B. 正确
13.题目见图片          (满分:5)
    A. 错误
    B. 正确
14.题目见图片          (满分:5)
    A. 错误
    B. 正确
15.题目见图片          (满分:5)
    A. 错误
    B. 正确
16.题目见图片          (满分:5)
    A. 错误
    B. 正确
17.简单优先文法允许任意两个产生式具有相同右部。(    )          (满分:5)
    A. 错误
    B. 正确
17春《编译原理》作业1

一、单选题:
1.如果文法G是无二义的,则它的任何句子α(    )。          (满分:4)
    A. 最左推导和最右推导对应的语法树必定相同
    B. 最左推导和最右推导对应的语法树可能不同
    C. 最左推导和最右推导必定相同
    D. 可能存在两个不同的最左推导,但它们对应的语法树相同
2.编译程序是将高级语言程序翻译成(    )。          (满分:4)
    A. 高级语言程序
    B. 机器语言程序
    C. 汇编语言程序
    D. 汇编语言或机器语言程序
3.正规式MI和M2等价是指(    )。          (满分:4)
    A. MI和M2的状态数相等
    B. Ml和M2的有向弧条数相等。
    C. M1和M2所识别的语言集相等
    D. Ml和M2状态数和有向弧条数相等
4.文法分为四种类型,即0型、1型、2型、3型。其中0型文法是(    )。          (满分:4)
    A. 短语文法
    B. 正则文法
    C. 上下文有关文法
    D. 上下文无关文法
5.用高级语言编写的程序经编译后产生的程序叫(    )。          (满分:4)
    A. 源程序
    B. 目标程序
    C. 连接程序
    D. 解释程序
6.若项目集Ik含有A->α · ,则在状态k时,仅当面临的输入符号a∈FOLLOW(A)时,才采取“A->α · ”动作的一定是(    )。          (满分:4)
    A. LALR文法
    B. LR(0)文法
    C. LR(1)文法
    D. SLR(1)文法
二、多选题:
1.在编译过程中,语法分析器的任务是(    )。          (满分:4)
    A. 分析单词是怎样构成的
    B. 分析单词串是如何构成语句和说明的
    C. 分析语句和说明是如何构成程序的
    D. 分析程序的结构
2.通常编译过程分成前端和后端,其中前端包括(    ),后端包括目标代码生成          (满分:4)
    A. 语法分析
    B. 语义分析
    C. 中间代码生成
    D. 词法分析
3.语言程序的测试工具有(    )          (满分:4)
    A. 静态分析器
    B. 动态测试器
    C. 调试工具
    D. 格式化工具
4.编译程序从逻辑结构上,一般由(    )组成,此外编译程序还包括表格处理程序、出错处理程序。          (满分:4)
    A. 词法分析程序
    B. 语法分析程序
    C. 语义分析程序
    D. 中间代码生成程序
    E. 代码优化程序
    F. 目标代码生成程序
三、判断题:
1.编译和运行是两个独立分开的阶段。          (满分:4)
    A. 错误
    B. 正确
2.可以将编译程序的几个不同阶段组织成为一遍,也可以把一个阶段分成若干遍完成。          (满分:4)
    A. 错误
    B. 正确
3.编译程序究竟分成几遍,参考的因素主要是源语言和机器(目标)的特征。          (满分:4)
    A. 错误
    B. 正确
4.词法分析和语法分析本质上都是对源程序的结构进行分析。          (满分:4)
    A. 错误
    B. 正确
5.在编译方式下执行源程序,易于查错,在程序执行中可以修改程序,但执行效率低。          (满分:4)
    A. 错误
    B. 正确
6.DFA可以通过多条路径识别一个符号串。(    )          (满分:4)
    A. 错误
    B. 正确
7.LR 法是自底向上语法分析方法。(    )          (满分:4)
    A. 错误
    B. 正确
8.一个多遍的编译程序可以较之一遍的编译程序少占内存。          (满分:4)
    A. 错误
    B. 正确
9.通常编译过程分成前端和后端,后端是由这样一些阶段组成:这些阶段的工作主要依赖于源语言而与目标机无关。          (满分:4)
    A. 错误
    B. 正确
10.编译程序与具体的机器有关,与具体的语言无关。(    )          (满分:4)
    A. 错误
    B. 正确
11.有些简单的编译程序在语法分析的同时产生目标指令代码。          (满分:4)
    A. 错误
    B. 正确
12.LR分析法在自左至右扫描输入串时就能发现错误,但不能准确地指出出错地点。(    )          (满分:4)
    A. 错误
    B. 正确
13.解释程序的输入只包括源程序。          (满分:4)
    A. 错误
    B. 正确
14.静态分析器是在不运行程序的情况下对源程序进行静态地分析,以发现程序中潜在的错误或者异常。          (满分:4)
    A. 错误
    B. 正确
15.所有的编译程序都需要生成中间代码。          (满分:4)
    A. 错误
    B. 正确

页: [1]
查看完整版本: 北语17春《编译原理》在线作业4321满分答案