中原工学院编译原理试卷附答案 - 图文 下载本文

一、 简答题(31分)

1、什么是编译程序?(3分)

2、编译前端由哪些部分组成?(3分)

3、编译过程各阶段分别完成什么任务?(各用一句话简短回答)(5分)

4、请回答句子、句型和语言的定义。(6分)

5、给出下面状态转换图的(S,?,?,s0,F)的具体组成(6分)

6、已知文法G[Z]: Z→aA A→bA|ab

写出文法对应的语言(4分)

7、请回答自上而下语法分析和自下而上语法分析有什么区别。(4分) 二、已知文法G: T→a|e|(F)P F→T+F|T

P→*P|T

①试给出式子(a+e)*a的最左推导及语法树(4分) ②试给出式子(a)*e的最右推导及语法树(4分) ③指出句型(a+T)*P的所有短语、直接短语和句柄。(5分)

三、文法 S→AB|bBa A→Aab|c B→dB|ε

①对文法G消除左递归(2分)

②对改写后的文法判断是否LL(1)文法,求相应FIRST和FOLLOW集合(7分) ③给出预测分析表(4分)

四、假设字母表是{a,b},若要求所有以字母a开始,b结尾的符号串,写出相应正规式,并构造与之相对应的最小DFA.(10分)