编译原理学习周入门教程--(6)句型的分析

 

上篇讲述了上下文无关文法的推导以及句子的语法树。

 

本篇继续对句型分析

开始教程

 

           对于句子而言,语法树是句子的几何表示形式,把句型形象直观的表示出来了,语法树是句型分析结构分析很好的工具。本篇

所说的句型分析是,给定一个符号串,是否为某文法的句型,也就是给定一串字符串,视图按照某文法的规则为该符号构造推导或

推导树,以此识别他是否是该文法的一个句型,当符号串全部是由非终结符组成的时候,就可以知道他是否是某个文法的句子

          这样根据一个句子得到的树,称为分析树。

          句型分析是一个识别输入符号串是否为语法上正确的程序的过程。

 

          我们的分析算法分为:自上而下和自下而上两大类。

         自上而下分析算法

                  从文法的开始符出发,反复使用各种产生式,寻找“匹配”于输入符号的推导。

                  编译原理学习周入门教程--(6)句型的分析_第1张图片

          自下而上的分析算法

                  从输入符号串开始,逐步进行“归约”,直至规归约到文法的开始符号。

                  编译原理学习周入门教程--(6)句型的分析_第2张图片

                  

          从语法树的角度来描述这两种自上而下是从开始开始推导,使语法树的末端正好是输入符号串。

          自下而上是把输入的符号串作为语法树末端的符号串,自底向上的构造语法树。

 

句型分析的一些说明:

          编译原理学习周入门教程--(6)句型的分析_第3张图片

 

                 例如:

                 编译原理学习周入门教程--(6)句型的分析_第4张图片

文法的一些实用性规则

        在实用中,我们限制文法不能含有有害规则和多余规则。

        有害规则:形为U——>U的规则。

         多余规则:一个句子的归到用不到的规则。

 

 

 

本篇讲述到这里,下一篇讲解词法分析,词法分析的工具--正规式。

 

愿开心阅读,共同提高(*^__^*) 。

 

 

 

 

       

 

 

你可能感兴趣的:(编译原理学习周入门教程--(6)句型的分析)