郑州大学《编译原理》期末试题样卷
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
词法分析:
1、根据正规式(a|b)*(aa|bb) (a|b)*构造NFA, 然后确定化成DFA
2、设计一个最小化的DFA,其输入字母表是{0,1},接受从0开始以1结尾的所有序列
正规式为:0(0|1)*1
语法分析:
1、已知文法G[E]: E E+T|E-T|T,T T*F|T/F|F,F(E)|i
证明(F+i)-T*(E-T)是文法的句型,并给出该句型的短语、直接短语和句柄
3、文法:S Aa
A BB
B sb|c 消除左递归
4、文法:S Qd
Q Rb|Se
R Sa|Qf|a 消除左递归
5、判断文法S cA|BA
A CB|ε
B dB
C a|bd
是否是LL(1)文法,说明理由。是的话构造预测分析表
6、已知文法G[A]: A(A)|a,构造该文法的LR(0)分析表
7、判断文法S Sab|bR
R S|a
是不是SLR文法,若是,构造分析表,不是的话说明理由。
语法制导翻译和中间代码生成:
1、分别给出表达式-(a*(b-c))+d 的逆波兰式、四元式和三元式
逆波兰式:@(a*(b-c))+d到@(a*(bc-))+d到@(abc-*)+d到(abc-*@)+d到abc-*@d+
注意:@为求负的运算符-
四元式:
(-,b,c,T1)
(*,a,T1,T2)
(@,T2,-,T3)
(+,T3,d,T4)
2、写出a*-(b+c)树形表示法
3、对布尔式X+Y>Z∨A∧(┐B∨C)进行翻译
4、把语句if A∨B 解: (1)(jnz,A,_,(5)) ;真出口;若A为真,执行S1代码 (2)(j,__,(3)) ;若A为假,看∨右边的表达式值 (3)(j<,B,D,(5)) ;真出口; ∨右边的表达式值为真