陈火旺编译原理课后习题答案Word格式.docx

上传人:b****2 文档编号:13924979 上传时间:2022-10-15 格式:DOCX 页数:39 大小:257.34KB
下载 相关 举报
陈火旺编译原理课后习题答案Word格式.docx_第1页
第1页 / 共39页
陈火旺编译原理课后习题答案Word格式.docx_第2页
第2页 / 共39页
陈火旺编译原理课后习题答案Word格式.docx_第3页
第3页 / 共39页
陈火旺编译原理课后习题答案Word格式.docx_第4页
第4页 / 共39页
陈火旺编译原理课后习题答案Word格式.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

陈火旺编译原理课后习题答案Word格式.docx

《陈火旺编译原理课后习题答案Word格式.docx》由会员分享,可在线阅读,更多相关《陈火旺编译原理课后习题答案Word格式.docx(39页珍藏版)》请在冰豆网上搜索。

陈火旺编译原理课后习题答案Word格式.docx

N2|4|6|8|O

D0|N

SO|AO

AAD|N

P36-8

文法:

ET|ET|ET

TF|T*F|T/F

F(E)|i

最左推导:

EE

TTTF

T

iT

iT*F

iF*Fi

i*Fii*i

ET

T*F

F*F

i

*F

i*(

E)i*(E

T)

i*(T

T)i*(FT)

i*(i

T)i

*(iF)

*(ii

最右推导

TE

E

T*i

F*iE

i*i

Ti*

iFi*iii*

F*T

F

*(E)

*(ET)

F*(E

F)

F*(Ei)

F*(T

i)

F*(Fi)

F*(i

i*(ii)

/********************************

P36-9

句子iiiei有两个语法树:

SiSeSiSeiiiSeiiiiei

SiSiiSeSiiSeiiiiei

P36-10

/**************

STS|T

T(S)|()

***************/

P36-11

/***************

L1:

SAC

AaAb|abCcC|

L2:

SAB

AaA|

BbBc|bc

L3:

AaAb|

BaBb|

L4:

SA|B

A0A1|

B1B0|A

第三章习题参考答案

P64-7

确定化:

1

{X}

{1,2,3}

{2,3}

{2,3,4}

{2,3,5}

{2,3,4,Y}

{2,3,4,}

最小化:

{0,1,2,3,4,5},{6}

{0,123,4,5}。

{1,3,5}{0,1,2,3,4,5}1{1,2,4©

{0,1,2,3,4},{5},{6}

{0,1,2,34}。

{1,3,5}

{0,1,23,{4},{5},{6}

{0,1,23。

{1,3}{0,123^{1,2,4}

{0,1},{2,0}{4},{$,{6

{0,1}0{1}{0,1}1{1,2}

{2,3}0B门匡{4}

{0},{1},{2,3},{4},{5},{6}

 

P64—8

(1|0)*01(1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)*(0|5)|(0|5)

01(0|101)|10(0|101)

P64-12

a

b

{0}

{0,1}

{1}

给状态编号:

2

3

最小化:

{0,1},{2,3}

{0,1}a{1}{0,1}b{2}{2,3}a{0,3}{2,3}b{3}

{0,1},{2},{3}

已经确定化了,进行最小化

{{0,1},{2,3,4,5}}

{0,1}a{1}{0,1}b{2,4}

{2,3,4,5爲{1,3,0,5}{2,3,4,5}b{2,3,4,5}

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

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

{{0,1},{2,4},{3,5}}

{0,1}a

{2,4}a

{3,5}a

{1,0}

{3,5}

{0,叽{2,4}

{2,4}b

{3,5}b

{2,4}

⑵:

{X,1,Y}

{1,Y}

{2}

{1,Y}

{0,1},{2,3

{0,1}0{1}{0,1}1{2}

{2,3}o{1,3}{2,3}i{3}

{0,1},{2},{3}

P81-1

(1)按照T,S的顺序消除左递归

SaF|(T)

TST

T,ST|

递归子程序:

procedureS;

begin

ifsym='

a'

orsym='

人'

thenabvanee

elseifsym='

('

thenbegin

advance;

T;

)'

thenadvanee;

elseerror;

end

elseerror

end;

procedureT;

S;

procedure;

'

advanee;

其中:

sym:

是输入串指针IP所指的符号

advanee:

是把IP调至下一个输入符号error:

是出错诊察程序

FIRST(S)={a],(}

FIRST(T)={af,(}

FIRST()={,,}

FOLLOW(S)={),,,#}

FOLLOW(T)={)}

FOLLOW()={)}

预测分析表

A

J

#

S

是LL

(1)文法

P81-2

文法:

ETE

EE|

TFT

TT|

FPF

F*F|

P(E)|a|b$

FIRST(E)={(,a,bf}

FIRST(E'

)={+,£

}

FIRST(T)={(,a,b]}

FIRST(T'

)={(,a,b,A,£

FIRST(F)={(,a,b,A}

FIRST(F'

)={*,£

FIRST(P)={(,a,bf}

FOLLOW(E)={#,)}

FOLLOW(E'

)={#,)}

FOLLOW(T)={+,),#}

FOLLOW(T'

)={+,),#}

FOLLOW(F)={(,a,b,A,+,),#}

FOLLOW(F'

)={(,a,b,A,+,),#}

FOLLOW(P)={*,(,a,bf,+,),#}

考虑下列产生式:

EE|

TT|

P(E)|A|a|b

FIRST(+E)AFIRST(£

)={+}n{£

}=$

FIRST(+E)AFOLLOW(E'

)={+}A{#,)}=$

FIRST(T)AFIRST(£

)={(,a,b,A}A{£

FIRST(T)AFOLLOW(T'

)={(,a,b,A}A{+,),#}=$

FIRST(*F'

)AFIRST(£

)={*}A{£

)AFOLLOW(F'

)={*}A{(,a,b,A,+,),#}=$

FIRST((E))AFIRST(a)AFIRST(b)AFIRST(A)=$所以,该文法式LL

(1)文法.

+

*

ETE'

E'

EE

T'

TT

PF

F'

F*F

F:

P

(E)

PA

procedureE;

b'

thenbeginT;

E'

endelseerror

procedureE:

+'

thenbeginadvanee;

Eend

elseifsym<

>

'

andsym<

#'

thenerrorend

thenbeginF;

T'

procedureT'

;

thenT

*'

thenerror

procedureF;

thenbeginP;

F'

procedureF'

end

procedureP;

A'

thenadvanee

then

E;

thenadvaneeelseerrorendelseerror

P81—3

(1)是,满足三个条件。

(2)不是,对于A不满足条件3。

(3)不是,AB均不满足条件3。

(4)是,满足三个条件。

*******

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

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

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

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