【摘要】:语法分析器,简称分析器,功能是依据语法规则对单词符号串进行语法分析,从而识别出各类语法单位,最终判断输入串是否构成语法上正确的“程序”。语法分析过程可以形象地用语法树表示出来,例如,单词符号串“id1:=id2+id3*int1”经过语法分析后可以确定是一个赋值语句,该赋值语句可以表示为如图1-3所示的语法树。
语法分析器,简称分析器(Parser),功能是依据语法规则对单词符号串进行语法分析(推导或归约),从而识别出各类语法单位,最终判断输入串是否构成语法上正确的“程序”。
语法分析是在词法分析的基础上,将单词符号组成各类语法单位(又称作语法范畴),如“表达式”“语句”和“程序”等,并通过语法分析来确定整个输入串是否构成语法上正确的“程序”。语法分析过程可以形象地用语法树表示出来,例如,单词符号串“id1:=id2+id3*int1”经过语法分析后可以确定是一个赋值语句,该赋值语句可以表示为如图1-3所示的语法树。
图1-3 语句id1:=id2+id3*int1的语法树
语法分析所依据的是语言的语法规则,而赋值语句和表达式的语法规则可定义如下:
(1)赋值语句的语法规则:标识符:=表达式。(www.xing528.com)
(2)表达式的语法规则:
①任何标识符是表达式;
②任何常数是表达式;
③若表达式1和表达式2都是表达式,则表达式1+表达式2、表达式1*表达式2都是表达式。
图1-3中的语法树就是依据上述规则生成的。语言语法的描述一般采用的是上下文无关文法(参见第2章),分析过程则采用自上而下或自下而上语法分析方法实现,具体内容将在第4章和第5章中进行介绍。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。