编译原理考试题及答案汇总
一、选择
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. 文法 G[N]= ( {b} , {N , B} , N , {N→b│ bB , B→bN} ),该文法所描述 的语言是C
A.( ) L(G[N])={bi│ i ≥ 0} B.( ) L(G[N])={b2i│ i≥ 0} C.( ) L(G[N])={b2i+1│ i ≥ 0} D.( ) L(G[N])={b2i+1│ i ≥ 1} 18. 一个句型中的最左_B____称为该句型的句柄。
A.( ) 短语 B.( ) 简单短语 C.( ) 素短语 D.( ) 终结符号
19.设 G 是一个给定的文法,S 是文法的开始符号,如果 S->x( 其中 x∈V*), 则称 x 是 文法 G 的一个___B__。
A.( ) 候选式 B .( ) 句型 C.( ) 单词 D.( ) 产生式 20. 文法 G[E] : E →T∣E + T T →F∣T ﹡ F F →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.( ) 句型
编译原理试题汇总+编译原理期末试题(8套含答案+大题集)



