编译原理-第三版-何炎祥-第三章习题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编译原理作业三

T3-1构造自动机A ,使得它能识别形式如±dd*·d*E ±dd 的实数,其中,d ∈{0,1,2,3,4,5,6,7,8,9}

T3-4将图所示NFA 确定化和最小化。

解:依据该NFSA 的状态图构造DFSA 如下表所示。

I

I x

I y

[q 0] 0 [q 1] 1 [q 2] 2

[q 1] 1 [q 2,q 3] 3

[q 2] 2

[q 1,q 3] 4 [q 2,q 3] 3 [q 3,q 4] 5 [q 1,q 3] 4 [q 1,q 3] 4 [q 2,q 3,q 4] 6 [q 3] 7 [q 3,q 4] 5 [q 3,q 4] 5 [q 3] 7 [q 2,q 3,q 4] 6 [q 3,q 4] 5 [q 1,q 3] 4 [q 3] 7 [q 3,q 4] 5

[q 3] 7

DFSA 相应的状态图如下图所示:

6

1

2

3

4

5

7

X

X

y

y

y

X

X

X

X

X

y

y

y

y

S

3

1

4

2

5

6

7

±

d

E

d

d

d

d

±

对DFSA 进行最小化:

已知K={0,1,2,3,4,5,6,7},K 可分为两个子集 K1={0,1,2,3,4,7}(非终态集) K2={5,6}(终态集)

在K1中,因为状态1只有x 输入,状态2只有y 输入,其他状态均有x ,y 输入,所以可以将K1分割为K11={0,3,4,7} K12={1} K13={2} 在K11中 {0}x=1∈K12 {3,4,7}x={5,6}⊂K2 故可将K11分割为 K111={0} K111={3,4,7} {3,4,7}x={5,6}⊂K2 {3,4,7}y={4,7}⊂K111 因此状态3,4,7是否等价取决于对K2的划分结果 在状态K2={5,6}中

{5,6}x=5∈K2 {5,6}y={4,7}⊂K111 所以状态5,6等价,所以状态3,4,7等价

所以,将原状态集合划分为{0}、{3,4,7}、{1}、{2}、{5,6} 最小化后的状态图为:

S

1

2

3

5

X

X

X

X

y

y

y

y

T3-9

图所示的是一个NFA A,试构造一个正规文法G,使得L(G)=L(A). 解:由NFSA的状态转换图得(a|b)*(aa|bb)(a|b)*

构造正规文法G[S]:S→aS|bS|aA|bB

A→aC|a

B→bC|b

C→aC|bC|a|b

相关文档
最新文档