资源预览内容
第1页 / 共110页
第2页 / 共110页
第3页 / 共110页
第4页 / 共110页
第5页 / 共110页
第6页 / 共110页
第7页 / 共110页
第8页 / 共110页
第9页 / 共110页
第10页 / 共110页
亲,该文档总共110页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
编译原理考试题及答案汇总一、选择1将编译程序分成若干个“遍”是为了_B_。A . 提高程序的执行效率B.使程序的结构更加清晰C. 利用有限的机器内存并提高机器的执行效率D.利用有限的机器内存但降低了机器的执行效率2正规式 MI 和 M2 等价是指_C_。A . MI 和 M2 的状态数相等B.Ml 和 M2 的有向弧条数相等。C .M1 和 M2 所识别的语言集相等 D. Ml 和 M2 状态数和有向弧条数相等3中间代码生成时所依据的是 _C_。A语法规则 B词法规则 C语义规则 D等价变换规则4后缀式 ab+cd+/可用表达式_B_来表示。A a+b/c+d B(a+b)/(c+d) C a+b/(c+d) D a+b+c/d 6 一个编译程序中,不仅包含词法分析,_A_,中间代码生成,代码优化, 目标代码生成等五个部分。A( ) 语法分析 B( )文法分析 C( )语言分析 D( )解释分析 7 词法分析器用于识别_C_。A( ) 字符串 B( )语句 C( )单词 D( )标识符8 语法分析器则可以发现源程序中的_D_。A( ) 语义错误 B( ) 语法和语义错误C( ) 错误并校正 D( ) 语法错误9 下面关于解释程序的描述正确的是_B_。(1)解释程序的特点是处理程序时不产生目标代码 (2)解释程序适用于 COBOL 和 FORTRAN 语言 (3)解释程序是为打开编译程序技术的僵局而开发的 A( ) (1)(2) B( ) (1) C( ) (1)(2)(3) D( ) (2)(3)10 解释程序处理语言时 , 大多数采用的是_B_方法。A( ) 源程序命令被逐个直接解释执行B( ) 先将源程序转化为中间代码 , 再解释执行C( ) 先将源程序解释转化为目标程序 , 再执行D( ) 以上方法都可以11 编译过程中 , 语法分析器的任务就是_B_。(1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的(3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构A( ) (2)(3) B( ) (2)(3)(4)C( ) (1)(2)(3) D( ) (1)(2)(3)(4) 12 编译程序是一种_C_。A. ( ) 汇编程序 B( ) 翻译程序 C( ) 解释程序 D( ) 目标程序13 文法 G 所描述的语言是_C_的集合。A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串B( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串C( ) 由文法的开始符号推出的所有终极符串D. ( ) 由文法的开始符号推出的所有符号串14 文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 3 型文法是_B_。 A. ( ) 短语文法 B( ) 正则文法 C( ) 上下文有关文法 D( ) 上下文无关文法15 一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一 组终结符号,一个开始符号,以及一组 _D_。A( ) 句子 B( ) 句型 C( ) 单词 D( ) 产生式16 通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目 标代码生成等五个部分,还应包括_C_。A( ) 模拟执行器 B ( ) 解释器C( ) 表格处理和出错处理 D( ) 符号执行器17 文法 GN= ( b , N , B , N , Nb bB , BbN ),该文法所描述 的语言是CA( ) L(GN)=bi i 0 B( ) L(GN)=b2i i 0C( ) L(GN)=b2i+1 i 0D( ) L(GN)=b2i+1 i 118 一个句型中的最左_B_称为该句型的句柄。A( ) 短语 B( ) 简单短语 C( ) 素短语 D( ) 终结符号19设 G 是一个给定的文法,S 是文法的开始符号,如果 S-x( 其中 xV*), 则称 x 是文法 G 的一个_B_。A( ) 候选式 B ( ) 句型 C( ) 单词 D( ) 产生式20 文法 GE :E TE TT FT FF a ( E )该文法句型 E F (E T) 的简单短语是下列符号串中的_。 ( E T ) E T F F (E T)A( ) 和 B( ) 和 C( ) 和 D( ) 21 若一个文法是递归的,则它所产生的语言的句子_A_。A( ) 是无穷多个 B ( ) 是有穷多个C( ) 是可枚举的 D( ) 个数是常量22 词法分析器用于识别_C_。A( ) 句子 B ( ) 句型 C( ) 单词 D( ) 产生式23 在语法分析处理中, FIRST 集合、 FOLLOW 集合、 SELECT 集合均是_B_。A . ( ) 非终极符集 B ( ) 终极符集 C( ) 字母表 D . ( ) 状态集24 在自底向上的语法分析方法中,分析的关键是_A_。A .( ) 寻找句柄 B .( ) 寻找句型 C .( ) 消除递归 D .( ) 选择候选式25 在 LR 分析法中,分析栈中存放的状态是识别规范句型_C_的 DFA 状态。A .( ) 句柄 B .( ) 前缀 C .( ) 活前缀 D .( ) LR(0) 项目26 文法 G 产生的_D_的全体是该文法描述的语言。A( ) 句型 B( ) 终结符集 C( ) 非终结符集 D( ) 句子27 若文法 G 定义的语言是无限集,则文法必然是 _A_A( ) 递归的 B ( ) 前后文无关的C ( ) 二义性的 D( ) 无二义性的28 四种形式语言文法中,1 型文法又称为 _A_文法。A( ) 短语结构文法 B ( ) 前后文无关文法C( ) 前后文有关文法 D( ) 正规文法29 一个文法所描述的语言是_A_。A( ) 唯一的B( ) 不唯一的C( ) 可能唯一,好可能不唯一 D( ) 都不对30 _B_和代码优化部分不是每个编译程序都必需的。 A( ) 语法分析 B ( ) 中间代码生成C( ) 词法分析 D( ) 目标代码生成31_B_是两类程序语言处理程序。A( ) 高级语言程序和低级语言程序 B ( ) 解释程序和编译程序C( ) 编译程序和操作系统D( ) 系统程序和应用程序32 数组的内情向量中肯定不含有数组的_A_的信息。A . ( ) 维数 B( ) 类型 C( ) 维上下界 D( ) 各维的界差33. 一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号, 一个开始符号,以及一组 _D_。A( ) 句子 B( ) 句型C( ) 单词 D( ) 产生式34 文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 2 型文法是_D_。A . ( ) 短语文法 B ( ) 正则文法C( ) 上下文有关文法 D( ) 上下文无关文法35一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号, 一个开始符号,以及一组 _D_。A( ) 句子 B( ) 句型 C( ) 单词 D( ) 产生式36_A_是一种典型的解释型语言。A( ) BASIC B( ) C C( ) FORTRAN D( ) PASCAL 37与编译系统相比,解释系统_D_。A( ) 比较简单 , 可移植性好 , 执行速度快B( ) 比较复杂 , 可移植性好 , 执行速度快C ( ) 比较简单 , 可移植性差 , 执行速度慢D( ) 比较简单 , 可移植性好 , 执行速度慢38用高级语言编写的程序经编译后产生的程序叫_B_。A( ) 源程序 B ( ) 目标程序 C( ) 连接程序 D( ) 解释程序 39编写一个计算机高级语言的源程序后 , 到正式上机运行之前,一般要经过_B_这几步:(1) 编辑 (2) 编译 (3) 连接 (4) 运行A . ( ) (1)(2)(3)(4) B( ) (1)(2)(3) C( ) (1)(3) D( ) (1)(4) 40把汇编语言程序翻译成机器可执行的目标程序的工作是由_A_完成的。A( ) 编译器 B( ) 汇编器C( ) 解释器 D( ) 预处理器 41词法分析器的输出结果是_C_。A( ) 单词的种别编码B( ) 单词在符号表中的位置C( ) 单词的种别编码和自身值 D( ) 单词自身值42 文法 G :SxSx|y 所识别的语言是_C_。A( ) xyx B( ) (xyx)* C ( ) xnyxn(n0) D( ) x*yx* 43如果文法 G 是无二义的,则它的任何句子_A_。A( ) 最左推导和最右推导对应的语法树必定相同 B( ) 最左推导和最右推导对应的语法树可能不同 C( ) 最左推导和最右推导必定相同D( ) 可能存在两个不同的最左推导,但它们对应的语法树相同 44构造编译程序应掌握_D_。A( ) 源程序 B ( ) 目标语言C( ) 编译方法 D( ) 以上三项都是45四元式之间的联系是通过_B_实现的。A( ) 指示器 B ( ) 临时变量C( ) 符号表 D( ) 程序变量46表达式( A B)(CD)的逆波兰表示为_B_。A . ( ) ABCD B ( ) A BCDC( ) AB CD D( ) A B CD47. 优化可生成_D_的目标代码。A( ) 运行时间较短B( ) 占用存储空间较小C( ) 运行时间短但占用内存空间大 D( ) 运行时间短且占用存储空间小48下列_C_优化方法不是针对循环优化进行的。A . ( ) 强度削弱 B ( ) 删除归纳变量C( ) 删除多余运算 D( ) 代码外提49编译程序使用_B_区别标识符的作用域。 A . ( ) 说明标识符的过程或函数名B( ) 说明标识符的过程或函数的静态层次
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号