|  | 
 
| 北交17春《编译原理》在线作业一 答案
 
 一、单选题:
 1.规范归约(最左归约-最右推导的逆过程)的关键问题是(    )。          (满分:2)
 A. 确定符号表
 B. 寻找单词
 C. 寻找句柄
 D. 定位错误
 2.描述一个语言的文法是(    )。          (满分:2)
 A. 唯一的
 B. 不唯一的
 C. 可能唯一
 D. 可能不唯一
 3.若一个文法是递归的,则它所产生的句子个数(    )。          (满分:2)
 A. 必定是无穷的
 B. 是有限个的
 C. 根据具体情况而定
 D. 不确定
 4.一个结点相应的文法符号属性值是由该结点兄弟结点和/或父节点的相应的文法符号的属性值来计算,按这种情况计算的属性值叫做(    )。          (满分:2)
 A. 综合属性
 B. 继承属性
 C. 自然属性
 D. 赋值属性
 5.编译程序必须完成的工作有(    ) 。(1) 词法分析(2) 语法分析(3) 语义分析(4) 目标代码生成(5) 中间代码生成(6) 代码优化          (满分:2)
 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.(    )是指源程序中不符合语义规则的错误,这些错误一般在语义分析时能检测出来。          (满分:2)
 A. 语义错误
 B. 语法错误
 C. 短语错误
 D. 短句错误
 7.在自下而上的语法分析方法中,分析的关键是(    )。          (满分:2)
 A. 寻找句柄
 B. 寻找句型
 C. 消除递归
 D. 选择候选式
 8.下面关于解释程序的描述正确的是(    )。(1) 解释程序的特点是处理程序时不产生目标代码(2) 解释程序适用于COBOL 和 FORTRAN 语言(3) 解释程序是为打开编译程序技术的僵局而开发的          (满分:2)
 A.(1)(2)
 B.(1)
 C.(1)(2)(3)
 D.(2)(3)
 9.正则文法(    )二义性的。          (满分:2)
 A. 可以是
 B. 一定不是
 C. 一定是
 D. 可以不是
 10.由于受到具体机器主存容量的限制,编译程序几个不同阶段的工作往往被组合成(    )。          (满分:2)
 A. 过程
 B. 程序
 C. 批量
 D. 遍
 11.Pascal的if语句满足(    )。          (满分:2)
 A. 最远匹配原则
 B. 动态作用域规则
 C. 静态作用域规则
 D. 最近匹配原则
 12.在编译程序使用的表格中,最重要的是(    )。          (满分:2)
 A. 数据表
 B. 信息表
 C. 变量表
 D. 符号表
 13.把一个高级语言程序翻译成机器可执行的目标程序的工作由下列程序之一完成(    )。          (满分:2)
 A. 汇编程序
 B. 解释程序
 C. 编译程序
 D. 预处理程序
 14.下述方法中,(    )不是自下而上分析方法。          (满分:2)
 A. 规范归约
 B. 算符优先分析法
 C. 递归下降分析法
 D. LR分析法
 15.1型文法也称为(    )。          (满分:2)
 A. 短语文法
 B. 上下文有关文法
 C. 右线性文法
 D. 左性性文法
 16.优化所依循的原则是(    )。          (满分:2)
 A. 正规式
 B. 上下文无关文法
 C. 语言的语义规则
 D. 程序的等价变换规则
 17.在LR分析法中,分析栈中存放的状态是识别规范句型(    )的DFA状态。          (满分:2)
 A. 句柄
 B. 前缀
 C. 活前缀
 D. LR(0)项目
 18.Σ={0,1}上的正规式(0|1)* 表示(    )。          (满分:2)
 A. 0开头的串
 B. 1开头的串
 C. 有一个0和一个1的串
 D. 由0、1组成的任意串
 19.最常用的中间代码形式是(    )          (满分:2)
 A. 二元式
 B. 三元式
 C. 四元式
 D. 树型
 20.(    )的任务是把中间代码(或经过优化处理之后)变换成特定机器上的低级语言代码。          (满分:2)
 A. 词法分析
 B. 语法分析
 C. 优化
 D. 目标代码生成
 21.已知文法:S→aAa|aBb|bAb|bBaA→x B→x ,则(    )          (满分:2)
 A. LR(1)文法
 B. LALR(1)文法
 C. 都不是
 D. A和B
 22.下列说法中错误的是(    )。          (满分:2)
 A. 当一遍中包含若干阶段时,各阶段的工作是穿插进行的
 B. 遍数越多越好
 C. 遍数越多,输入/输出所消耗的时间越多
 D. 并非每种语言都可以用单遍编译来实现
 23.语法分析器的输出是(    )。          (满分:2)
 A. 源程序
 B. 单词符号
 C. 语法单位
 D. 中间代码
 24.高级语言编译程序常用的语法分析方法中,递归下降分析法属于(    )分析方法。          (满分:2)
 A. 自左至右
 B. 自上而下
 C. 自下而上
 D. 自右向左
 25.编译程序诸阶段的工作往往是(    )。          (满分:2)
 A. 顺序
 B. 并行
 C. 成批
 D. 穿插
 二、多选题:
 1.描述词法分析的有效工具是(    )。          (满分:4)
 A. 正规式
 B. 上下文无关文法
 C. 语言的语义规则
 D. 有限自动机
 2.一个上下文无关文法G包括四个组成部分(    )。          (满分:4)
 A. 终结符号
 B. 非终结符号
 C. 开始符号
 D. 一组产生式
 3.根据不同的用途和侧重,编译程序可分为(    )。          (满分:4)
 A. 诊断编译程序
 B. 优化编译程序
 C. 交叉编译程序
 D. 可变目标编译程序
 4.常见的初等数据类型包括(    )。          (满分:4)
 A. 数值数据
 B. 逻辑数据
 C. 字符数据
 D. 指针数据
 5.在如下上下文无关文法G中: stmt-sequence → stmt; stmt-sequence | stmt stmt → s 哪些是终结符号?(    )          (满分:4)
 A. stmt-sequence
 B. stmt
 C. s
 D. ;
 三、判断题:
 1.中间代码生成时所依据的是等价变换规则。          (满分:3)
 A. 错误
 B. 正确
 2.语义分析的任务包括两方面,一个是静态语义检查,一个是动态语义的解释执行并生成中间代码。          (满分:3)
 A. 错误
 B. 正确
 3.每个文法的综合符合集和集成属性集的交应该为空。          (满分:3)
 A. 错误
 B. 正确
 4.我们可以概括地认为中间代码是编译器使用的源代码的任何一个内部表示。          (满分:3)
 A. 错误
 B. 正确
 5.文法二义并不代表语言一定是二义的。只有当产生一个语言的所有文法都是二义的时,这个语言才是二义的。          (满分:3)
 A. 错误
 B. 正确
 6.优先关系表对应的优先函数,如果存在,一定唯一。          (满分:3)
 A. 错误
 B. 正确
 7.仅考虑一个基本块,不能确定一个赋值是否真是无用的。          (满分:3)
 A. 错误
 B. 正确
 8.文法G的一个句子对应于多个推导,则G是二义的。          (满分:3)
 A. 错误
 B. 正确
 9.算符优先分析法只能识别由算符优先文法描述的句子。          (满分:3)
 A. 错误
 B. 正确
 10.文法S→aA;A→Ab;A→b是LR(0)文法(S为文法的开始符号)。          (满分:3)
 A. 错误
 B. 正确
 更多免费学习资料请登录www.openhelp100.com
 
 
 | 
 |