编译原理课后答案第三版.docx

上传人:b****5 文档编号:8027970 上传时间:2023-01-28 格式:DOCX 页数:15 大小:127.88KB
下载 相关 举报
编译原理课后答案第三版.docx_第1页
第1页 / 共15页
编译原理课后答案第三版.docx_第2页
第2页 / 共15页
编译原理课后答案第三版.docx_第3页
第3页 / 共15页
编译原理课后答案第三版.docx_第4页
第4页 / 共15页
编译原理课后答案第三版.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

编译原理课后答案第三版.docx

《编译原理课后答案第三版.docx》由会员分享,可在线阅读,更多相关《编译原理课后答案第三版.docx(15页珍藏版)》请在冰豆网上搜索。

编译原理课后答案第三版.docx

编译原理课后答案第三版

12将图a确定化最小化

a,b

a

a

图a

解:

引入新的初态结点X和终态结点Y(X,Y不属于源非确定集)得图如下:

a

εεεε

a,ba

列出状态转换矩阵如下所示:

ab

A{X,0,Y}{0,1,Y}{1}

B{0,1,Y}{0,1,Y}{1}

C{1}{0,Y}ø

D{0,Y}{0,1,Y}{1}

DFA如下:

a

ab

bb

ba

最少化:

终态{A,B,D}a={A,B}∈{A,B,D}

{A,B,D}b={B,}∈{A,B,D}

∴最少化为:

a

b

a

(b)将图b最少化

b

ba

b

a

a

a

b

ba

ab

图b

解:

终态{0,1}a∈{0,1}

{0,1}b={2,4}∈{2,3,4,5}

∴{0,1}不能再分

非终态{2,3,4,5}a={0,1,3,5}

{2,4}a={0,1}{2,4}b={3,5}

{3,5}a={3,5}{3,5}b={2,4}

0代表{0,1},2代表{2,4},3代表{3,5}得最少化为:

aba

bb

a

14.构造一个DFA,它接收∑={0,1}上所有满足如下条件的字符串:

每个1都有0直接跟在右边。

解:

构造正规式为:

(0|10)*

则可构造如下NFA:

ε

0

εε

εε

ε10

ε

ε

列出状态转换矩阵如下:

01

A{q0,F,A,C,qf}{B,G,F,A,C,qf}{D}

B{B,G,F,A,C,qf}{B,G,F,A,C,qf}{D}

C{D}{E,G,F,A,B,C,qf}ø

D{E,G,F,A,B,C,qf}{B,G,F,A,C,qf}{D}

则得DFA如下:

0

0

0

1

10

1

最少化得{A,B,D}0={B}{A,B,D}1={C}

0

1

0

15.给定右线性文法G:

S->0S|1S|1A|0B

A->1C|1

B->0C|0

C->0C|1C|0|1

求出一个与G等价的左线性文法。

解:

由G得NFA=<{S,A,B,C}∪{f},{0,1},δ,S,{f}>

1

0,111

0,10,1

00

0

由NFA得左线性文法:

GL=<{0,1},{A,B,C,f},f,ρ’>

ρ’:

A->1

B->0

C->A1|B0|C0|C1

f->A1|B0|C0|C1

1.考虑下面文法G:

S->a|^|(T)

T->T,S|S

(1)消除G的左递归

(2)改写后的文法是否是LL

(1)的?

给出预分析表。

解:

(1)S->a|^|(T)

T->ST’

T’->,ST’|ε

(2)

FIRSTFOLLOW

Sa,^,(#,,,)

Ta,^,()

T’,,ε)

预分析表:

a^(),#

SS->aS->^S->(T)

TT->ST’T->ST’T->ST’

T’T’->εT->,ST’

是LL

(1)的。

5.文法S->AS|b

A->SA|a

(1)列出所有LR(0)项目

(2)构造LR(0)项目集规范族及识别活前缀的DFA

(3)

该文法是SLR的么?

若是构造它的SLR分析表。

解:

扩展文法:

S’->SS

S->AS|b

A->SA|ab

A

a

S

A

a

SbA

bbS

aa

S

AbA

aaS

b

A

(3)

          FollowFirst

S’#a,b

S#,a,ba,b

Aa,ba,b

冲突项目I1中:

有接受项目和移进冲突,可解决.     

#a,b

I5,I7存在移进,归约冲突,不可解决.

∵Follow(S)∩a∩b≠○

所以,该文法不是SLR的

8.证明下面的文法S->AaAb|BbBa

A->ε

B->ε

是LL

(1)文法。

①不含左递归;

②First(α1)∩First(α2)∩…=○

③First(A)∩Follow(A)=○

∴该文法是LL

(1)文法

1.给出下面表达式的逆波兰表示(后缀式):

a*(-b+c)

a+b*(c+d/e)

notAornot(CornotD)

(AandB)or(notCorD)

后缀式分别为:

ab-c+*

abcde/+*+

AnotCDnotornotor

ABandCnotDoror

3.请将表达式-(a+b)*(c+d)-(a+b+c)分别表示成三元式、间接三元式和四元式序列。

三元式:

(0)(+,a,b)

(1)(-,(0),_)

(2)(+,c,d)

(3)(*,

(1),

(2))

(4)(+,a,b)

(5)(+,(4),c)

(6)(-,(3),(5))

间接三元式:

(1)(+,a,b)

(2)(-,

(1),_)

(3)(+,c,d)

(4)(*,

(2),(3))

(5)(+,

(1),c)

(6)(-,(4),(5))

间接代码:

(1)

(2)

(3)

(4)

(1)

(5)

(6)

四元式:

(0)(+,a,b,T1)

(1)(-,T1,_,T2)

(2)(+,c,d,T3)

(3)(*,T2,T3,T4)

(4)(+,a,b,T5)

(5)(+,T5,c,T6)

(6)(-,T4,T6,T7)

7.用7.5.1节的方法,把下面语句翻译成四元式序列:

WhileA

IfA=1thenC:

=C+1

ElsewhileA≤DdoA:

=A+2;

100(j<,A,C,102)

101(j,_,_,115)

102(j<,B,D,104)

103(j,_,_,115)

104(j=,A,1,106)

105(j,_,_,109)

106(+,C,1,T1)

107(:

=,T1,_,C)

108(j,_,_,114)

109(j≤,A,D,111)

110(j,_,_,115)

111(+,A,2,T2)

112(:

=,T2,_,A)

113(j,_,_,109)

114(j,_,_,100)

115

3.试对以下基本块B1和B2:

B1:

A:

=B*C

D:

=B/C

F:

=2*E

G:

=B*C

H:

=G*G

F:

=H*G

L:

=F

M:

=L

B2:

B:

=3

D:

=A+C

E:

=A*C

G:

=B*F

H:

=A+C

I:

=A*C

J:

=H+I

K:

=B*5

L:

=K+J

M:

=L

分别应用DAG对它们进行优化,并就以下两种情况分别写出优化后的四元式序列:

(1)假设只有G,L,M在基本块后面还要被引用;

(2)假设只有L在基本块后面还要被引用。

解:

B1:

F,L,M

*E

H

2+

*

A,GD

/

*

BC

B1优化后:

A:

=B*C

(1)G:

=B*C

(2)G:

=B*C

D:

=B/CH:

=G*GH:

=G*G

E:

=A+DL:

=G*HL:

=G*H

G:

=AM:

=L

H:

=G*G

F:

=H*G

L:

=F

M:

=L

B2:

L,M

+

+

E,I

D,H

G

+*

*K

B

F315AC

„‘

B2优化后:

B:

=3

(1)G:

=3*F

(2)H:

=A+C

D:

=A+CH:

=A+CI:

=A*C

E:

=A*CI:

=A*CJ:

=H+I

G:

=B*FJ:

=H+IL:

=15+J

H:

=DL:

=15+J

I:

=EM:

=L

J:

=H+I

K:

=15

L:

=K+J

M:

=L

5.以下程序是某程序的最内循环,试对它进行循环优化

A:

=0

I:

=1

L1:

B:

=J+1

C:

=B+I

A:

=C+A

IfI=100GOTOL2

I:

=I+1

GOTOL1

L2:

解:

代码外提:

B:

=J+1

删除归纳变量I:

由C:

=B+I可知I和C成线性关系

所以I=100和C=B+100等价,即替换为:

R:

=100+B

IFC=BGOTOL2

同理I:

=I+1可替换成C:

=C+1

综上所述代码优化后为:

A:

=0

B:

=J+1

C:

=B+1

R:

=100+B

L1:

A:

=C+A

IfC=RGOTOL2

C:

=C+1

GOTOL1

L2:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1