词法分析的基本功能
单词
保留字—while,do(确定有限的
标识符—number1
常量—10,true
特殊符号—运算符,界限符,格式符(确定有限的
正则表达式–自动机
字母表–元素的非空又穷集合
符号串–由字母表组成的有穷序列
符号串的连接–符号串的方幂–符号串集合的乘积–符号串集合的方幂–符号串集合的正闭包–符号串集合的星闭包(带空)
正则表达式定义
正则表达式的性质
运算的优先级,|的交换性与结合性,幂的等价性,同一率
用正则表达式描述词法
作业
1.包含偶数个x的所有符号串。
(y∣z)∗(xx(y∣z)∗)∗|x(y|z)x
2、不包含连续两个y的所有符号串集合。
(x∣z∣y(x∣z))∗y?
第三节课
确定有限自动机
DFA,(求和符号,s,s0,Z,f)
求和符号=字母表,s=状态集合,f=状态准换函数,s0=初始状态,Z=终止状态集合
非确定有限自动机
NFA,s0初始状态集,存在空,转化函数可以到一个集合
词法分析
自动机的最小化
定义:等价状态,无关状态
dfa到正则表达式,正则表达式到nfa
词法分析器的设计
token样例 类型+内容
语法与文法
语法,语义,语用
巴克斯范式BNF
语法成分::=组成成分
赋值语句::=变量=表达式
上下文无关文法
语法符号->X1,X2……
文法G定义为四元组(Vt,Vn,P,S)
终极符
句型:从开始符推出来的,句子,语言
验证程序是不是语法的句子
语法树,句柄,直接左递归,直接右递归,最左推导,最右推导