1、院系: 专业班级: 姓名: 学号: 装 订 线编译原理课程考试试卷B适用专业: 考试日期: 闭卷所需时间:120分钟 总分:100分 一、选择题(每选项2分,共10分)1 文法 G 产生的 (1) 的全体是该文法描述的语言。 A 句型 B. 终结符集 C. 非终结符集 D. 句子 2.在下述的编译方法中,自底向上的方法有(2) ,自顶向下的分析方法有 (3) 。 简单优先分析 算符优先分析 递归下降分析 预测分析技术 LR(K)分析 SLR(k)分析 LL(k)分析 LALR(K)分析 A. B. C. D. E. F. 3.简单优先分析每次归约的是(4)A. 最左直接短语 B.直接短语 C.
2、最左素短语 D.控制结点4.一个文法所描述的语言是 (5) A.唯一的 B.不唯一的 C.可能唯一,可能不唯一二、判断题,正确画,错误画(每小题2分,共10分)(1)算符优先分析是规范规约()(2)句型的可归约前缀包含该句型的句柄。()(3)每个文法都能改写为LL(1)文法()(4)逆波兰法表示的表达式亦称前缀式()(5)正规文法产生的语言都可以用上下文无关文法来描述()三、问答题(每小题10分,共80分)(1)什么是S-属性文法?什么是L-属性文法?它们之间有什么关系?(2)什么是句柄?什么是最左素短语?(3)对于文法G(E): ET|E+TTF|T*FF(E)|i 1).证明 (T*F+i
3、) 是文法G(E)的一个句型。 2). 写出上述句型的短语,直接短语、句柄和素短语。(4)给出生成下列语言的CFG: 1n0m1m0n|m,n=0(5)构造正规式 (0|1)*00 相应的DFA。(6)计算文法G(M)的每个非终结符的FIRST和FOLLOW集合,并判断该文法是否是LL(1)的,请说明理由。G(M):M TBT Ba | eB Db | eT | e D d | e(7)设已构造出文法G(S):(1) S BB(2) B aB(3) B b的LR分析表如下ACTIONGOTO状态ab#SB0s3s4121acc2s6s753s3s484r3r35r16s6s797r38r2r29r2假定输入串为abab#,请给出LR分析过程(即按照步骤给出状态,符号,输入串的变化过程)。(8)写出表达式a+b*(c-d)对应的四元式。