编译原理期末复习题Word格式文档下载.docx

上传人:b****4 文档编号:13745543 上传时间:2022-10-13 格式:DOCX 页数:29 大小:284.47KB
下载 相关 举报
编译原理期末复习题Word格式文档下载.docx_第1页
第1页 / 共29页
编译原理期末复习题Word格式文档下载.docx_第2页
第2页 / 共29页
编译原理期末复习题Word格式文档下载.docx_第3页
第3页 / 共29页
编译原理期末复习题Word格式文档下载.docx_第4页
第4页 / 共29页
编译原理期末复习题Word格式文档下载.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

编译原理期末复习题Word格式文档下载.docx

《编译原理期末复习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《编译原理期末复习题Word格式文档下载.docx(29页珍藏版)》请在冰豆网上搜索。

编译原理期末复习题Word格式文档下载.docx

(0|1)*0(0|1)(0|1)

(4) 

0*10*10*10*

(5) 

(00|11)*((01|10)(00|11)*(01|10)(00|11)*)*

答案

以0开头并且以0结尾的,由0和1组成的符号串。

{α|α∈{0,1}*}

由0和1组成的符号串,且从右边开始数第3位为0。

含3个1的由0和1组成的符号串。

{α|α∈{0,1}+,且α中含有3个1}

{α|α∈{0,1}*,α中0和1为偶数}

3.4 

对于下列语言分别写出它们的正规表达式。

英文字母组成的所有符号串,要求符号串中顺序包含五个元音。

英文字母组成的所有符号串,要求符号串中的字母依照词典顺序排列。

Σ={0,1}上的含偶数个1的所有串。

Σ={0,1}上的含奇数个1的所有串。

具有偶数个0和奇数个1的有0和1组成的符号串的全体。

(6) 

不包含子串011的由0和1组成的符号串的全体。

(7) 

由0和1组成的符号串,把它看成二进制数,能被3整除的符号串的全体。

令Letter表示除这五个元音外的其它字母。

((letter)*A(letter)*E(letter)*I(letter)*O(letter)*U(letter))*

A*B*....Z*

(0|10*1)*

(0|10*1)*1

[分析]

设S是符合要求的串,|S|=2k+1(k≥0)。

则S→S10|S21,|S1|=2k(k>

0),|S2|=2k(k≥0)。

且S1是{0,1}上的串,含有奇数个0和奇数个1。

S2是{0,1}上的串,含有偶数个0和偶数个1。

考虑有一个自动机M1接受S1,那么自动机M1如下:

和L(M1)等价的正规表达式,即S1为:

((00|11)|(01|10)(00|11)*(01|10))*(01|10)(00|11)*

类似的考虑有一个自动机M2接受S2,那么自动机M2如下:

和L(M2)等价的正规表达式,即S2为:

((00|11)|(01|10)(00|11)*(01|10))*

因此,S为:

((00|11)|(01|10)(00|11)*(01|10))*(01|10)(00|11)*0|

((00|11)|(01|10)(00|11)*(01|10))*1

(6)1*|1*0(0|10)*(1|ε)

(7)接受w的自动机如下:

对应的正规表达式:

(1(01*0)1|0)*

3.6 

给出接受下列在字母表{0,1}上的语言的DFA。

所有以00结束的符号串的集合。

所有具有3个0的符号串的集合。

答案(a)DFA 

M=({0,1},{q0,q1,q2},q0,{q2},δ)

其中δ定义如下:

δ(q0,0)=q1 

δ(q0,1)=q0

δ(q1,0)=q2 

δ(q1,1)=q0

δ(q2,0)=q2 

δ(q2,1)=q0

(b)正则表达式:

1*01*01*01*

DFA 

M=({0,1},{q0,q1,q2,q3},q0,{q3},δ)

δ(q1,1)=q1

δ(q2,0)=q3 

δ(q2,1)=q2

δ(q3,1)=q3 

3.7构造等价于下列正规表达式的有限自动机。

(1)10|(0|11)0*1

(2)((0|1)*|(11))*

(1)DFA 

M=({0,1},{q0,q1,q2,q3},q0,{q3},δ)其中δ定义如下:

(2)δ(q0,0)=q1 

δ(q0,1)=q2

(3)δ(q1,0)=q1 

δ(q1,1)=q3

(4)δ(q2,0)=q3 

δ(q2,1)=q1

(5)

(6)

(2)DFA 

M=({0,1},{q0},q0,{q0},δ)

(7)其中δ定义如下:

(8)δ(q0,0)=q0 

(9)

3.8给定右线性文法G:

S->

0S|1S|1A|0B

A->

1C|1

B->

0C|0

C->

0C|1C|0|1

试求一个于G等价的左线性文法G'

3.9试对于下列正规表达式使用证明定理3。

5的构造算法构造非确定的有限自动机。

请给出每个自动机在处理输入符号串ababbab的过程中的动作序列。

(1)(a|b)*

(2)(a*|b*)*

(3)((ε|a)b*)*

3.10转换练习3.9中的每个NFA为DFA。

并给出每个DFA在处理输入符号串ababbab的过程中的动作序列。

3.11试把练习3.10中得到的DFA的状态给以最小化。

(1),

(2),(3)的DFAM相同,化简结果为:

(4)

3.12我们可以证明两个正规表达式是等价的,如果它们的最小状态DFA是相同的(除了状态的名字以外)。

利用这一结论,请说明下列正规表达式都是等价的。

根据3.11的结果知这几个正规表达式是等价的。

3.13对于下列正规表达式构造最小状态的DFA。

(1)(a|b)*a(a|b)

(2)(a)b)*a(a|b)(a|b)

5.对如下文法:

G[S]:

S→abS|aaB|ad

B→bbB|b

分别给出句子abaabbb和ad的句柄

句子ad的语法分析树为:

句子abaabbb的语法分析树为:

S

a

b

B

b

B

所以句子abaabbb的句柄是b;

句子ad的句柄是ad.

二、(10分)说明如下文法是否是LL

(1)文法,若不是,将其转换为LL

(1)文法。

最后给出该文法的LL

(1)分析表。

G[A]:

A→Be

B→Bb|a

文法中有左递归,不是LL

(1)文法。

转换为G′:

A→Be

B→aB′

B′→bB′|λ

Predict(A→Be)={a}

Predict(B→aB′)={a}

Predict(B′→bB′)={b}

Predict(B′→λ)={e}

LL

(1)分析表:

a

e

A

→Be

→aB′

B′

→bB′

→λ

4.给出识别正则表达式((a|bc)*d)+的NFA。

5.已知文法G[S]:

S→S;

G│G

G→G(T)│H

H→a│(S)

T→T+S│S

找出句型:

a(T+S);

H;

(S)的短语、简单短语和句柄。

短语:

a,T+S,a(T+S),H,a(T+S);

H,(S)

简单短语:

a,T+S,H,(S)句柄是a.

6.已知文法G[S]为:

S→AB|bCA→b|λ

B→aD|λC→AD|b

D→aS|c

对其每一个非终级符求First集和Follow集。

First(S)={b,a,λ}

First(A)={b,λ}

First(B)={a,λ}

First(C)={b,a,c}

First(D)={a,c}

Follow(S)={#}

Follow(A)={a,c,#}

Follow(B)={#}

Follow(C)={#}

Follow(D)={#}

二、(10分)设有文法G[A]:

A→iB*e

B→SB|ε

S→[eC]|.i

C→eC|ε

判定该文法是否为LL

(1)文法?

若是则给出它的LL

(1)分析表,否则说明理由。

先计算各个产生式的Predict集:

Predict(A->

iB*e)={i};

Predict(B->

SB)={[,.}

ε)={*}

Predict(S->

[eC])={[}

.i)={.}

Predict(C->

eC)={e}

ε)={]}

因为Predict集没有冲突,所以是LL

(1)文法。

LL

(1)分析表如下:

i

*

[

]

.

->

iB*e

->

ε

SB

S

[eC]

.i

C

eC

1、证明下面文法是LL

(1)的但不是SLR

(1)文法

S→AaAb|BbBaA→εB→ε

解:

对于产生式S→AaAb|BbBa来说

FIRST(AaAb)∩FIRST(BbBa)={a}∩{b}=Φ而A,B∈VN仅有一条候选式。

因此,这个文法是LL

(1)的。

下面构造这个文法的识别活前缀的DFA。

系专业班级学号姓名

………………………………………密……………………………………封…………………………………线…………………………………………

I0={S'

→·

S,S→·

AaAb,S→·

BbBa,A→·

B→·

}

I1={S'

→S·

}

I2={S→A·

aAb}

I3={S→B·

bBa}

I4={S→Aa·

Ab,A→·

I5={S→Bb·

Ba,B→·

I6={S→AaA·

b}

I7={S→BbB·

a}

I8={S→AaAb·

I9={S→BbBa·

由于FOLLOW(A)=FOLLOW(B)={a,b}

因此项目集I0中存在归约-归约冲突。

在I0状态下,当输入符号是a或是b时,不知用A→ε还是B→ε进行归约。

故此文法不是SLR

(1)的。

但是,此文法是LR

(1)的。

五、已知文法G[S],其产生式如下:

S→(L)|aL→L,S|S

从G[S]中消除左递归,并为之构造一个非递归预测分析器LL

(1)分析表。

请说明在句子(a,(a,a))上的分析器的动作。

(20分)解:

将所给文法消除左递归得G'

S

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

当前位置:首页 > 人文社科 > 军事政治

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

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