1、编译原理22春平时作业2-00001试卷总分:100 得分:96一、单选题 (共 15 道试题,共 60 分)1.一个句型中的最左_称为该句型的句柄。A.短语B.简单短语C.素短语D.终结符号答案:B2.算符优先分析与规范归约相比的优点是( )A.归约速度快B.对文法限制少答案:A3.代码代码优化的目的是( )A.节省时间B.节省空间C.节省时间和空间D.把编译程序进行等价交换答案:C4.词法分析的任务是( )A.识别单词B.分析句子的含义C.识别句子D.生成目标代码答案:A5.在编译中产生语法树是为了( )。A.语法分析B.语义分析C.词法分析D.目标代码生成答案:A6.对应Chomsky四
2、种文法的四种语言之间的关系是( )A.L0L1L2L3B.L3L2L1L0C.L3=L2L1L0D.L0L1L2=L3答案:B7.如果L(M1)=L(M2),则M1与M2( )A.它们的状态数相等B.都是二义的C.都是无二义的D.等价答案:D8.若一个文法是递归的,则它所产生的语言的句子( )。A.是有穷多个B.是无穷多个C.是可枚举的D.个数是常量答案:9.文法GA:A AaB BAb Ba是():A.正规文法B.二型文法答案:B10.设有文法GI: II1|I0|Ia|Ic|a|b|c 下列符号串中是该文法句子的有( )。 ab0 a0c01 aaa bc10A.B.C.D.答案:B11.
3、正规式M1和M2 等价是指_A.M1和M2的状态数相等B.M1和M2的有向弧条数相等C.M1和M2所表示的语言集相等D.M1和M2的有向弧条数与状态数相等答案:C12.常用的中间代码形式不含( )A.三元式B.四元式C.逆波兰式D.语法树答案:D13.代码生成阶段的主要任务是()A.把高级语言翻译成汇编语言B.把高级语言翻译成机器语言C.把中间代码变换成依赖具体机器的目标代码D.把汇编语言翻译成机器语言答案:C14.作为编译程序的源语言不能是_.A.高级语言B.C语言C.低级语言D.Pascal语言答案:C15.词法分析器作为独立的阶段使整个编译程序结构更加简洁、明确,因此,( )A.词法分析
4、器应作为独立的一遍B.词法分析器作为子程序较好C.词法分析器分解为多个过程,由语法分析器选择使用 D.词法分析器并不作为一个独立的阶段答案:B二、判断题 (共 10 道试题,共 40 分)16.就执行速度而言,编译后再执行程序比解释执行程序慢答案:正确17.使用中间代码的主要好处有:便于移植、便于修改、便于优化、便于掌握。答案:正确18.目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。答案:正确19.甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。答案:错误20.一个有限状态自动机中,有且仅有一个唯一的终态。答案:错误21.上下文无关文法的开始符号可以是终结符或非终结符答案:正确22.能用上下文无关文法定义的语言,一定能用上下文有关文法来定义。答案:正确23.逆波兰表示法表示表达式时无须使用括号。答案:正确24.一个基本快的出口和入口可以不唯一。答案:正确25.设r和s分别是正规式,则有L(r|s)=L(r)L(s)。答案:错误