编译原理复习题及答案 一、 选择题 1. 一个正规语言只能对应( B ) A 一个正规文法 B 一个最小有限状态自动机 2. 文法 G[A]:A→ε A→aB B→Ab B→a 是( A ) A 正规文法 B 二型文法 3. 下面说法正确的是( A ) A 一个 SLR(1)文法一定也是 LALR(1)文法 B 一个 LR(1)文法一定也是 LALR(1)文法 4. 一个上下文无关文法消除了左递归,提取了左公共因子后是满足 LL(1)文法的( A ) A 必要条件 B 充分必要条件 5. 下面说法正确的是( B ) A 一个正规式只能对应一个确定的有限状态自动机 B 一个正规语言可能对应多个正规文法 6. 算符优先分析与规范归约相比的优点是( A ) A 归约速度快 B 对文法限制少 7. 一个 LR(1)文法合并同心集后若不是 LALR(1)文法( B ) A 则可能存在移进/归约冲突 B 则可能存在归约/归约冲突 C 则可能存在移进/归约冲突和归约/归约冲突 8. 下面说法正确的是( A ) A Lex 是一个词法分析器的生成器 B Yacc 是一个语法分析器 9. 下面说法正确的是( A ) A 一个正规文法也一定是二型文法 B 一个二型文法也一定能有一个等价的正规文法 10. 编译原理是对(C)。 A、机器语言的执行 B、汇编语言的翻译 C、高级语言的翻译 D、高级语言程序的解释执行 11. (A)是一种典型的解释型语言。 A.BASIC B.C C.FORTRAN D.PASCAL 12. 把汇编语言程序翻译成机器可执行的目标程序的工作是由(B)完成的。 A. 编译器 B. 汇编器 C. 解释器 D. 预处理器 13. 用高级语言编写的程序经编译后产生的程序叫(B) A.源程序 B.目标程序 C.连接程序 D.解释程序 14. (C)不是编译程序的组成部分。 A.词法分析程序 B.代码生成程序 C.设备管理程序 D.语法分析程序 15. 通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括(C)。 A.模拟执行器 B.解释器 C.表格处理和出错处理 D.符号执行器 16. 编译程序绝大多数时间花在(D)上。 A.出错处理 B.词法分析 C.目标代码生成 D.表格管理 17. 源程序是句子的集合,(B)可以较好地反映句子的结构。 A. 线性表 B. 树 C. 完全图 D. 堆栈 18. 词法分析器的输出结果是(D)。 A、单词自身值 B、单词在符号表中的位置 C、单词的种别编码 D、单词的种别编码和自身值 19...