编译原理 教学课件 作者 康慕宁 林奕 讲稿_3.pptVIP

  • 2
  • 0
  • 约2.81万字
  • 约 101页
  • 2019-10-09 发布于未知
  • 举报

编译原理 教学课件 作者 康慕宁 林奕 讲稿_3.ppt

第3章 语法分析与前后文无关文法 基本知识 编译程序的扫描器从输入的源程序字符流中识别出程序设计语言的单词,即语言中的终结符号。 由扫描器所定义的语言是单词的集合,即词法级的程序设计语言。 语法分析程序实际上是一个下推自动机(PDA: Push-Down Automata),它识别一个语言的短语结构——语言的单词如何组合成语法正确的程序。 多数程序设计语言允许嵌套的句法结构,这样的语言可由前后文无关文法定义,因此被称为前后文无关语言(CFL: Context-Free Language)。 事实上,每个PDA识别的语言都是CFL。这个结论可由本章将要介绍的从PDA构造CFG(Context-Free Grammar)的规则得出。由PDA接受的语言相应CFG的每个产生式与PDA的一个转换对应。 本章主要内容 由确定的PDA接受的、被称为是由LL(1)文法定义的语言。 LL(1)语言可由确定的、自顶向下的分析程序识别,且在识别过程中,每次最多向前搜索1个输入符号即可确定下一步的分析动作。 LL分析表示自左至右扫描、最左推导(from Left to Right and Leftmost Derivation)的语法分析。 我们还将介绍一种目前最常用的一种自底向上的语法分析文法——LR分析法。 3.1下推自动机 (Push-Down Automata) 【定义3·1】一个下推自

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档