天津大学编译原理讲义-Part3词法分析3
- 格式:ppt
- 大小:5.77 MB
- 文档页数:43
编译第3次课:内容:1、上下文无关文法与语言的关系(第二章内容)2、词法分析器设计及其与语法分析器的关系(第三章内容)3、状态转换图与词法分析器实现(第三章内容,看同学前面知识的接受程度与进度再决定该部分内容是否本节课上讲)重点:1、上下文无关文法与语言的关系2、语法树与二义性3、状态转换图过程:1、开场,本节知识在编译中的作用2、中间与学生交互(语言中句子的个数?如何达到无穷个的?语法的二义及其原因?)3、总结:1)指出本节的重点1、上下文无关文法与语言的关系;2、语法树与二义性;3、状态转换图;2)下节内容简介编译第4次课:内容:1、词法分析器设计的相关问题(第三章)2、状态转换图与词法分析器实现(第三章)3、正规式与正规集(第三章)4、确定有限自动机重点:1、状态转换图及其在词法分析中的作用2、正规式与正规集(特殊字集的重要性)3、确定有限自动机(状态转换图)与正规式的关系过程:1、开场,高级程序设计语言-文法-编辑程序的关系2、中间与学生交互1)词法分析与语法分析的关系2)词法分析器中存在的问题?3)提示:自动机(状态转换图)、正规式、3型文法都是语言(字集-单词)的描述3、总结:1)指出本节的重点2)下节内容简介编译第5次课:内容:1、非确定有限自动机-》确定有限自动机(确定化与化简)2、正规文法与有限自动机3、正规式与有限自动机重点:1、非确定有限自动机的确定化与化简2、正规式与有限自动机过程:1、开场,非确定有限自动机与确定有限自动机的区别2、各个步骤中发挥学生的主动思考(提问)提问1:在DFA化简时,开始设置的两个可区别的子集如何确定?3、总结:1)指出本节的重点2)下节内容简介编译第6次课:内容:1、确定有限自动机的与化简2、语法分析器功能及分析方法的引出3、LL(1)分析法重点:1、LL(1)分析法过程:1、开场,确定有限自动机的化简(状态等价与可区分性的含义)提问1:如何形成初始的两个子集的划分,即如何区分全部状态中的可区别性2、语法分析器功能及分析方法的引出(提问)强调:语法分析器的输入与输出,即与词法分析及后续处理的关系。
编译原理-第三章词法分析-3.4词法单元的识别词法单元的识别
词法单元的识别
⼀、状态转换图
定义
状态转换图描绘词法分析器被语法分析器调⽤时,词法分析器为返回下⼀个记号所做的动作
表⽰
圆圈:表⽰状态,开始状态由⼀条没有出发节点、标号为“开始”的边指明
双层圆圈:表⽰接受状态,表⽰已识别⼀个记号;若返回,则返回⼀个词法单元和其相关属性
有向边:表⽰从⼀个状态到另⼀状态
每条边的标号包含⼀个或多个符号,若离开状态s的某边上标号为other,则它表⽰离开s的其他边所指⽰的字符以外的任意字符*:表⽰输⼊指针必须回退的转态
⽰例
1.关系符转换图
2.标识符和保留字的转换图
3.空⽩符的状态转换图
4.⽆符号数的状态转换图
⼆、基于状态转换图的词法分析器的体系结构
上述实例的合并转换图
参考——慕课-苏州⼤学。