第七讲语法1精品.ppt

第3章 语法分析 3.1 文法和语言 3.1 文法和语言 文法是程序语言的生成系统,而自动机则是程序语言的识别系统;用文法可以精确地定义一个语言,并依据该文法构造出识别这个语言的自动机。因此,文法对程序语言和编译程序的构造具有重要意义,如程序语言的词法可用正规文法描述,语法可用上下文无关文法描述,而语义则要借助于上下文有关文法描述。 3.1.1 文法和语言的概念 1.语言 通常我们用Σ表示字母表,字母表中的每个元素称为字符或符号。不同语言的字母表可能是不同的,程序语言的字母表通常是ASCII字符集。由字母表Σ中的字符所组成的有穷系列称为Σ上的字符串或字,字母表Σ上的所有字符串(包括空串)组成的集合用Σ*表示。那么,对字母表Σ来说,Σ*上的任意一个子集都称为Σ上的一个语言,记为L(LСΣ*),该语言的每一个字符串称为语言L的一个语句或句子。 2.文法 文法通常表示成四元组G=(VT,VN,S,ξ),其中: (1)VT为终结符号集,这是一个非空有限集,它的每个元素称为终结符号; (2)VN为非终结符集,它也是一个非空有限集,其每个元素称为非终结符号,且有VT∩VN=Φ; (3)S为一文法开始符,是一个特殊的非终结符号,即S∈VN; (4)ξ是产生式的非空有限集,其中每个产生

文档评论(0)

1亿VIP精品文档

相关文档