编译原理
第二章 语法分析
闭包正闭包
文法与语言
文法:是描述语言的语法结构的形式规则
文法的概念
-
非终结符:
-
出现在规则的左部、用一括起来、表示一定语法概念的词。
-
非终结符集合用$V_N$表示。
-
-
终结符
- 语言中不可再分割的字符串(包括单个字符组成的串)。注:终结符是组成句子的基本单位。
- 终结符集合用$V_T$表示。
-
开始符号
- 表示所定义的语法范畴的非终结符。
- 注:开始符号又称为识别符号。
-
产生式
- 是用来定义符号串之间关系的一组(语法)规则。
- 形式:A→a (A产生α)
-
推导
- 推导是从开始符号开始,通过使用产生式的右部取代左部,最终能产生语言的一个句子的过程。
- 最左(右)推导:每次使用一个规则,以其右部取代符号串最左(右)非终结符。
- 注:最左推导和最右推导称为规范推导。
-
归约
- 归约是推导的逆过程,即,从给定的源语言的句子开始,通过规则的左部取代右部,最终达到开始符号的过程。
- 最左(右)归约是最右(左)推导的逆过程。
- 注:最左归约和最右归约称为规范归约。
-
句型、句子和语言
-
文法规则的扩充
-
元语言符号
- 用来说明文法符号之间关系的符号,如, “→”和“|”称为元语言符号。