编译原理第六次作业

1.分别写出描述以下语言的正规文法和正规式:

L1={abna|n≥0}。

L2={ambn|n≥1,m ≥1}

L3={(ab)n|n≥1}

解:

1 L1={abna|n>=0}

正规文法:

S->aA

A->bna   A->bA/a

正规式:ab*a

 

 

2L2={ambn|n≥1,m ≥1}

正规文法:

S->aS/a

S->bS/b

正规式:aa*bb*

 

 

3L3={abn|n≥1}

正规文法:

s->aA  A->bB

B->aA|ε

正规式:

(ab)(ab)*

 

 2.将以下正规文法转换到正规式

1

Z→0A
A→0A|0B
B→1A|ε

 答:

A=0A+0(1A+ε)=0A+01A+0=(0+01)A+0

Z=0(0|01)*0

 

 

 

2

Z→U0|V1
U→Z1|1
V→Z0|0

答:

Z=(Z1+1)0+(Z0+0)1=Z10+10+Z01+01=Z(10+01)+10+01

Z=(10|01)*(10|01)

 

 3

S→aA
A→bA|aB|b
B→aA

答:

A=bA+aaA+b=(b+aa)A+b

S=a(b|aa)*b

 

 4

I→l|Il|Id

答:

I=l+Il+Id=I(l+d)+l

I=(l|d)*l

 

posted @ 2019-10-18 21:19  Chock17  阅读(188)  评论(0编辑  收藏  举报