第二章基本概念
字母表
字母表:是一个有穷集合
符号:字母,数字,标点符号、…
例如:
二进制字母表:{0,1}
ASCLL字符集
Unicode字符集
都是字母表
字母表的运算
字母表的乘积运算:
字母表的幂运算
字母表的n次幂:长度为n的符号串构成的集合
字母表的闭包运算
字母表的闭包:长度为正数的符号串构成的集合
字母表的克林闭包
就是比字母表的闭包多一个空集
串
克林闭包里的元素都是字母表上的一个串
串的运算
串的链接
串的幂运算
文法的定义
**终结符:**是文法所定义的语言的基本符号也称为token
例:VT={apple,boy,eat,little}
**非终结符:**是用来表示语法成分的符号,有事也称为“语法变量”
例:VN={<句子>,<名词短语><动词短语>…}
终结符和非终结符是不相交的
终结符和非终结符的并集是文法符号集
P:产生式集合
产生式:描述了将终结符和非终结符组成串的方法
开始符号:是表示该文法的最大的语法成分
例如:S=<句子>
语言的定义
推导
归约
标识符的文法
无符号整数
浮点的文法
文法分类
左边的字符不能小于右边的字符
左边必须是终结符
w代表终结符
B代表非终结符
CFG分析树
直接短语一定是某个产生式的右部,某个产生式的右部不一定是直接短语