语法分析——自底向上分析课件.PPT

5.4.3 构造识别活前缀的有穷自动机 继续上述的后继项目构造过程, 直到再没有新的项目集产生。 C2的基本项目集为{ A→(.A) } ,最终C2={ A→(.A),A→.(A),A→.a }。分析状态2的项目: A→(.A):后继项目集C4={ A→(A.)} A→.(A):后继项目集仍是C2本身 A→.a:后继项目集为C3={ A→a.} 对状态4的项目A→(A.) 后继项目集C5={ A→(A).}。 至此,我们得到的所有项目集如表5.8所示。 状态 项目集 转换函数 0 S→.A A→.(A) A→.a GO[0,A]=1 GO[0,(]=2 GO[0,a]=3 1 S→A. ACCEPT 2 A→(.A) A→.(A) A→.a GO[2,A]=4 GO[2,(]=2 GO[2,a]=3 3 A→a. R2 4 A→(A.) GO[4,)]=5 5 A→(A). R1 因为每个项目集是有穷的,因此最终产生的状态数目肯定是有限的。最终产生的识别活前缀的有穷自动机如图5.8所示。 0: S→.A A→.(A) A→.a 1: S→A. 2: A→(.A) A→.(A) A→.a 3: A→a. A ( a 图5.8识别活前缀的有穷自动机 4: A→(A.) 5: A→(A). A ) ( a 5.4.3 构造识别活前缀的有穷自动机 5

文档评论(0)

1亿VIP精品文档

相关文档