词法分析
文中所有ppt截图均源自陈意云老师的主页(陈意云老师主页)
一. 基础定义
词法分析器:把构成源程序的字符流翻译成记号流,完成和用户接口的一些任务
词法单元:又称单词,是编程语言种合法的字符串
词法记号:满足某种规则的词法单元,采用同一种记法。
串(符号的有穷序列)的运算:
!!运算符优先级!!:
* > 连接运算 > |
正规式:又称“正则表达式”,按照一组定义规则,由较简单的正规式构成的,每个正规式r表示一个语言 L(r).正规式是用于说明词法单元如何对应到词法记号的模式。与非形式化的描述相比,正规式更具形式化,更加精确。
为表示简洁,正规式命名,如 d1->r1 ,但必需保证每个名字对应的正规式中使用的各种符号已经在前面定义了,从而可以避免递归定义的情况。
NFA(不确定的有限自动机):
DFA(确定的有限自动机):
NFA与NFA转化与化简