下载此文档

第四章 语法分析(一).ppt


文档分类:IT计算机 | 页数:约115页 举报非法文档有奖
1/115
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/115 下载此文档
文档列表 文档介绍
2017/7/23
西北工业大学软件与微电子学院 machunyan
1
课程内容
第1章概论
第2章词法分析
第3章上下文无关文法
第4章语法分析
第5章语义分析
第6章运行时环境
第7章代码生成
machunyan
西北工业大学软件与微电子学院
2
语法分析程序的任务:
语法分析以词法分析程序输出的单词序列为输入,分析源程序的语法结构,判断它是否为相应程序设计语言的合法程序。
语法分析阶段可以确定单词流中违反源语言语法结构规则的错误。
通常语法分析的结果是构造出表示该语法结构的分析树(parse tree)或语法树(syntax tree)。
第四章自上而下的语法分析
machunyan
西北工业大学软件与微电子学院
3
自上而下的语法分析算法概述
递归下降分析(Recursive-Descent Top-Down Parsing)
LL(1)分析
自上而下的语法分析器自动生成工具—
项目:编译器实现(语法分析模块)
第四章自上而下的语法分析
machunyan
西北工业大学软件与微电子学院
4
自上而下的语法分析算法:
已知文法G[S],对任意输入串w,若从文法的开始符号S出发, 能为w构造一个最左推导,则w是一个合法的句子,即w L(G),否则w有语法错误。
该算法自上而下为w的分析结果建立一棵语法树。

machunyan
西北工业大学软件与微电子学院
5
:文法G:
S → aA
S → cAd
A → a
A → ab 识别输入串w=cabd是否为该文法所定义的句子?
运用自上而下的语法分析方法:
(续)
machunyan
西北工业大学软件与微电子学院
6
cAd  cabd
cAd  cad
S  cAd
从文法开始符号S出发试图为w=cabd构造一个最左推导:
S  cAd cabd
c
S
d
A
b
a
成功
machunyan
西北工业大学软件与微电子学院
7
(续)
自上而下的语法分析方法:
从文法开始符号S出发试图为输入符号串构造一个最左推导;
构造最左推导的过程就是选择产生式和匹配符号串的过程;
有时需要重复扫描词法分析输出的单词序列。
machunyan
西北工业大学软件与微电子学院
8
自上而下的语法分析算法概述
递归下降分析(Recursive-Descent Top-Down Parsing)
LL(1)分析
自上而下的语法分析器自动生成工具—
项目:编译器实现(语法分析模块)
第四章自上而下的语法分析
machunyan
西北工业大学软件与微电子学院
9
递归下降语法分析
递归下降分析的基本方法
文法规则使用EBNF表示法
其它应注意的问题
分析树与抽象语法树
案例:Tiny语法分析
machunyan
西北工业大学软件与微电子学院
10
:文法G:S → cAd A → ab
识别输入串w=cabd是否为该文法定义的句子?
递归下降分析的基本方法(续)

第四章 语法分析(一) 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数115
  • 收藏数0 收藏
  • 顶次数0
  • 上传人分享精品
  • 文件大小1.45 MB
  • 时间2017-07-23