- 5
- 0
- 约6.52千字
- 约 14页
- 2019-05-10 发布于广东
- 举报
第四章 语法分析--自上而下分析 第四章 语法分析——自上而下分析 高级语言的语法结构适合用上下无关文法描述,因此,我们将上下文无关文法作为语法分析的基础。本章和下一章,我们将介绍编译程序构造中的一些典型的语法分析方法 4.1 语法分析器功能 语法分析是编译过程的核心部分。它的任务是在词法分析识别出单词符号串的基础上,分析并判定程序的语法结构是否符合语法规则。 下图表明了语法分析器在编译程序中的地位。 按照语法分析树的建立方法,我们可以粗略地把语法分析方法分为两类:一类是自上而下分析法,另一类为自下而上分析法。 4.2 自上而下分析面临的问题 本节主要是通过例子使我们认识到,作自上而下分析所遇到的主要困难是语法的左递归性使分析陷入无限循环;回溯的不确定性,要求我们将已经完成工作推倒从来,为解决这些问题我们要消除左递归和消除回溯。 4.3 LL(1) 分析法 4.3.1 左递归的消除 一般而言,假定P关于的全部产生式是 P?P?1| P?2|…| P?1m| ? 1| ? 2 |… | ?n 其中,每个?都不等于?,而每个?都不以P开头,那末,消除P的直接左递归性就是把这些规则改写成: P? | ? 1 P’| ? 2 P’|…| ? n P
原创力文档

文档评论(0)