总结:
语法三个基本概念
a.字母表:(1)大小写英文字母(2)数字 (3)特殊字符
b.单词符号:是语言中具有独立意义的最基本结构
c.语法单位:由单词符号构成的更大的结构
语法:一组规则,用这组规则可以产生形式上正确的程序。
一个数据类型通常包括以下三种要素:
1.用于区别这种类型的数据对象的属性。
2.这种类型的数据对象可以具有的值。
3.可以作用于这种类型数据对象的操作。
上下文无关文法的特点:它所定义的语法范畴(或语法单位)是完全独立于这种范畴可能出现的环境的。
特点:独立性
缺点:不能用来描述自然语言
一个上下文无关文法G包括四个组成部分:一组终结符号,一组非终结符,一个开始符号,以及一组产生式。
形式上定义一个上下文无关文法G是一个四元式(VT,VN,S,P)
最左(最右)推导:在推导的任何一步αÞβ,其中α、β是句型,都是对α中的最左(右)非终结符进行替换
0型文法
G=(VT ,VN ,S ,P) 是一个0型文法,如果它的每个产生式是这样的结构 a®baÎ(VNÈVT)* 且至少有一个非终结符,而bÎ(VNÈVT)* 。
0型文法也称短语文法
0型文法的描述能力相当于图灵机
该文法所描述的语言称为0型语言,或者称递归可枚举语言
1型文法:
产生式的形式为α→β
其中|β|>=|α|, S∈ε 除外,但S不得出现于任何产生式的右部
1型文法又称为上下文无关文法
另一种定义形式:α1Aα2→α1βα2
该文法所描述的语言又称上下文有关语言
2型文法:
该文法的产生式满足:A→α
A为非终结符,α为终结符和非终结符组成的符号串,可以是空串
该文法又称为上下文无关文法
该文法所描述的语言又称为上下文无关语言
3型文法:
该文法的产生式满足:
A→αB 或 A→Bα
A为非终结符, α为终结符组成的符号串,可以是空串
该文法又称为右线性文法,或左线性文法,通称正规文法
该文法所描述的语言又称为正规语言(用来描述词法规则)
习题:
感受:
通过这一章的学习,我学到了语法语义,学了最左最右推导,上下文无关文法等知识。虽然不需要代码,但推导的逻辑性是很强的。原理是很容易理解,遇到简单的问题也是可以的,如果比较复杂的话那就要晕了。写文法,感觉比推导还要难。通常就是没有思路或思路不对。看看答案,能理解但要是自己写那就困难了许多。