编译原理试题汇总+编译原理期末试题(8套含答案+大题集)(完整资料).doc

发布时间 : 星期一 文章编译原理试题汇总+编译原理期末试题(8套含答案+大题集)(完整资料).doc更新完毕开始阅读

102: t3:=5+t2 (2)100: j:=1

101: if j>10 goto NEXT 102: i:=j+j 103: a[i]:=0

2. 设基本块p由如下语句构成:

T 0 : =3.14;

T 1 :=2*T 0 ;

T 2 :=R+r;

A:=T l *T 2 ; B:=A;

T 3 :=2*T 0 ;

T 4 :=R+r;

T 5 :=T 3 *T 4 ;

T 6 :=R-r ;

B:=T 5 *T 6 ;

试给出基本块p的 DAG 。

解:基本块p的DAG图:

3. 写出表达式(a+b)/(a-b-(a+b*c)的三元序列及四元序列。

解:(1)三元式: ①(+,a,b) ②(-,a,b) ③(/,①,②)

④(*,b,c) ⑤(+,a,④) ⑥(-,③,⑤) (2)四元式: ①(+,a,b,T1) ②(-,a,b,T2) ③(/,T1,T2,T3) ④(*,b,c,T4) ⑤(+,a,T4,T5) ⑥(-,T3,T5,T6)

4. 写一个文法使其语言为偶数集,且每个偶数不以0开头。

解:文法G(S): S→AB|B|A0 A→AD|C B→2|4|6|8 C→1|3|5|7|9|B D→0|C

5. 设文法 G ( S ):

S→S + aF|aF| + aF

F→*aF|*a

(1)消除左递归和回溯;

(2)构造相应的 FIRST 和 Follow 集合。 1)

S->aFS'|+aFS' S'->+aFS'|ε F->*aF' F'->F|ε (2)

FIRST(S)={a,+} FOLLOW(S)={#} FIRST(S')={+,ε } FOLLOW(S')={#} FIRST(F)={*} FOLLoW(F)=(+,#} FIRST(F')={*,ε} FOLLOW(+,#}

五.计算题(10分)

已知文法为:

S->a|^|(T)

T->T,S|S

构造它的 LR(0)分析表。

解:加入非终结符S',方法的增广文法为: S'->S S->a S->^ S->(T) T->T,S

T->S 下面构造它的LR(0)项目集规范族为:

联系合同范文客服:xxxxx#qq.com(#替换为@)