文档详情

[第四章语法分析3.ppt

发布:2017-01-09约字共55页下载文档
文本预览下载声明
表4.9 优先关系表 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. (1)算符优先文法(OPG) 二、形式方法 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 优先关系的定义 若G是一OG文法,a,b∈Vt , U,V,W∈Vn a,b之间优先关系分别有以下三种情况: 1) a=b if 文法中有形如 U → …ab…或U → …aVb… 的规则。 2) ab if 文法中有形如 U → …aW …的规则,其中 W? b …或W? Vb … 3) ab if 文法中有形如 U → …Wb …的规则, 其中 W? …a或W? … aV 。 + + . + + . . Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 算符优先文法(OPG)的定义 设有一OG文法,如果在任意两个终结符之间, 至多只有上述关系中的一种,则称该文法为算符 优先文法(OPG)。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. (2)构造优先关系矩阵 FIRSTVT( U )={b|U?b…或U?Vb…,b∈Vt, V∈Vn} + + LASTVT( U )={a|U?…a或U?…aV,a∈Vt, V∈Vn} + + 求 “ = ” 检查每一条规则,若有U → …ab…或 U → …aVb…, 则 a=b 求“ ”、“ ”复杂一些,需定义两个集合 . . . . . . Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 求“ ”、“ ”: . . 若文法有规则 W →...aU... ,对任何b, b∈FIRSTVT(U) 则有:a b . 若文法有规则 W →...Ub... ,对任何a, a∈LASTVT(U) 则有:a b . . . Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 构造FIRSTVT(U)的算法 1)若有规则U → b…或U → Vb…(说明存在U?b…或 U?Vb…) 则b∈FIRSTVT(U) + + 2)若有规则U → V…且b∈FIRSTVT(V), 则b∈FIRSTVT(U) 说明:因为V?b…或V?Wb…,所以有U?V…?b…或 U?V… ?Wb… + + + + Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. FIRSTVT(A)= FIRSTVT(T)= FIRSTVT(R)= 设有下列算符优先文法G: A → a | (R) T → A , T | A R→ T 求如下FIRSTVT 集合。 FIRSTVT(A)={ a ( } FIR
显示全部
相似文档