编译原理实践--形式语言基本知识.pptVIP

  • 3
  • 0
  • 约3.53千字
  • 约 30页
  • 2017-09-15 发布于重庆
  • 举报
形式语言 首先要了解如何确切地描述或定义一种程序设计语言,其次才能识别和分析这种语言。20世纪50年代,语言学家Noam Chomsky(乔姆斯基)提出了一个用来描述语言的数学系统,把用一组数学符号和规则来描述语言的方式叫做形式描述,而把能用数学符号和规则描述的语言称为形式语言。这种理论对程序设计语言的设计和编译程序的构造有着重大的作用。程序设计语言就是形式语言 。 文法之间的关系 语句分析 语法分析程序以词法分析输出的符号串作为输入,在分析过程中检查这个符号串是否为该程序语言的句子。若是,输出该句子的分析树;若不是,则表示源程序存在语法错误,需要报告错误的性质和位置。例如,对于C程序语句“IF (a10) b=5;”,词法分析识别出了IF、(、标识符、…等单词符号,而语法分析则要检查这些单词之间的搭配、结构是否正确。IF后面是否为(,(后面是否为正确的表达式等等。 自底向上 自底向上:从所给符号串x开始,在其中寻找与文法的某条规则右部相匹配的子串,并用该规则的左部取代此子串,重复此过程,步步向上规约,最后设法将符号串x规约到文法的起始符号Z。 本课程对自底向上不做进一步讨论 自顶向下的语法分析的一般过程 例:文法G: S → cAd A → ab A → a 识别输入串w=

文档评论(0)

1亿VIP精品文档

相关文档