江南大学现代远程教育 第二阶段测试卷 考试科目:《编译原理》第4章至第7章(总分100分)
时间:90分钟 一、选择与填充(30) 1. 语法分析最常用的两类方法是______________和______________分析法。 2.若a为终结符,则A->α·a β为( )项目。 A. 移进 B. 归约 C. 接受 D. 待约 3.最右推导是____________________________________________________。 4.文法分为四种类型,即0型、1型、2型、3型。其中0型文法是( )。 A. 正则文法 B.短语文法 C.上下文有关文法 D.上下文无关文法 5.自顶向下的语法分析方法的基本思想是:从文法的_____________开始,根据给定的输入串并按照文法的产生式一步一步的向下进行直接推导,试图推导出文法的___________,使之与给定的输入串_____________。 6. 在LR分析法中,分析栈中存放的状态是识别规范句型( )的 DFA 状态。 A. 句柄 B. 前缀 C. 活前缀 D. LR(0) 项目
二、将文法G[S]
改写为等价的G'[S],使G'[S]不含左递归和左公共因子。(15)
三、写出下列程序的四元式。(18) While a>0 ∨ b<0 do Begin X:=X+1; if a>0 then a:=a-1 else b:=b+1 End;
四、说明带语义栈的LL驱动器中的四个语义栈指针的意义?(15)
五、设文法G(S):
S→(L)|a S|a
L→L,S|S
(1) 消除左递归和公共前缀;(2)
计算每个非终结符的FIRST集和FOLLOW集。(22)
|