知识总结
语法三个基本概念
a.字母表:(1)大小写英文字母(2)数字 (3)特殊字符
b.单词符号:是语言中具有独立意义的最基本结构
c.语法单位:由单词符号构成的更大的结构
语法:一组规则,用这组规则可以产生形式上正确的程序。
语义:指这样的一组规则,使用它可以定义一个程序的意义。
语法规则:词法规则和语法规则
语义规则:描述语法单位的功能和含义
一个数据类型通常包括以下三种要素:
1.用于区别这种类型的数据对象的属性。
2.这种类型的数据对象可以具有的值。
3.可以作用于这种类型数据对象的操作。
字母表:由若干元素组成的有限非空集合,用S表示,它的每个元素称为一个符号。
符号串: 由S中的符号所构成的有穷序列。
空字:不包含符号的序列称为空字,记为e。
用S*表示S上的所有符号串的全体,空字也包括在其中。
上下文无关文法的特点:它所定义的语法范畴(或语法单位)是完全独立于这种范畴可能出现的环境的。
特点:独立性
缺点:不能用来描述自然语言
一个上下文无关文法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为非终结符, α为终结符组成的符号串,可以是空串
该文法又称为右线性文法,或左线性文法,通称正规文法
该文法所描述的语言又称为正规语言(用来描述词法规则)
课后题总结:
感受
语法语义是一门语言构成条件,在这两项基础上,通过语法单位的组织来构成一种程序语言。编译原理所做的就是将语言转换成可以通过规则解析出来的句子,因此这一章的内容是学习该门课程的必要条件。通过这一章的学习,我了解了很多文法、语法等方面的知识。但是也比较抽象,比较难理解,需要认真听讲仔细思考。通过这一章的学习,我学会了画语法树和推导与直接推导和语法描述。