- 0
- 0
- 约1.94万字
- 约 118页
- 2020-11-23 发布于湖北
- 举报
第二章 词法分析 本章内容 词法分析器:把构成源程序的字符流翻译成记号流,还完成和用户接口的一些任务 围绕词法分析器的自动生成展开 介绍正规式、状态转换图和有限自动机概念 第二章 词法分析 第一节 词法记号及属性 第二节 词法记号的描述与识别 第三节 有限自动机 第四节 从正规式到有限自动机 第五节 词法分析器的生成器 第二章 词法分析 词法分析是编译的第一个阶段,是语法分析的必要准备。 词法分析器(Lexical Analyzer) 又称扫描器(Scanner):执行词法分析的程序 实现方法: 作为单独的一遍:把字符流的源程序变为单词序列,输出在一个中间文件上,这个文件作为语法分析程序的输入而继续编译过程。 作为语法分析的子程序:当语法分析程序需要一个单词时,调用该子程序;词法分析程序每得到一次调用,便从源程序文件中读入一些字符,直到识别出一个单词或直到下一单词的第一个字符为止。 词法分析程序和语法分析程序的关系 第二章 词法分析 词法分析的主要任务:对构成源程序的字符串从左到右的扫描,逐个字符地读入源程序字符并按照构词规则切分成一个一个具有独立意义的单词。并确定其属性(如保留字、标识符、运算符、界限符和常量等)。再把它们转换成长度统一的标准形式—属性字(TOKEN)。 其他任务: 剥去源程序的注解和(由空格、制表或换行符等引起的)空白 把来自编译器各个阶段的错误信息和源程序联系起来。 2.1 词法记号及属性 2.1.1 词法记号、模式、词法单元 模式(patten):产生和识别元素的规则 记号(token):按照某个模式(或规则)识别出的元素(一组) (单词种别) 单词(lexeme):被识别出的元素自身的值(一个),也称为词值 记号名 单词举例 模式的非形式描述 if if 字符i, f for for 字符f, o, r relation , = , = , … 或 = 或 = 或 … id sum, count, D5 由字母开头的字母数字串 number 3.1, 10, 2.8 E12 任何数值常数 literal “seg. error” 引号“和”之间的任意字符串引 号本身除外 2.1.2 词法记号的属性 词法分析器所输出的单词符号常常表示成如下的二元式: (记号,单词符号的属性值) 记号(单词种别)通常用整数编码。一个语言的单词符号如何分种,分成几种,怎样编码,是一个技术性的问题。它主要取决于处理上的方便。标识符一般统归为一种。常数则直按类型(整、实、布尔等)分种。关键字可将其全体视为一种,也可以一字一种。采用一字一种的分法实际处理起来较为方便。运算符可采用一符一种的分法,但也可以把具有一定共性的运算符视为一种。至于界符一般用一符一种的分法 2.1.2 词法记号的属性 如果一个记号只含一个单词符号,那么,对于这个单词符号,记号就完全代表它自身了。若一个记号含有多个单词符号,那么,对于它的每个单词符号,除了给出记号之外,还应给出有关单词符号的属性信息。 单词符号的属性是指单词符号的特性或特征。属性值则是反应特性或特征的值。例如,对于某个标识符,常将存放它的有关信息的符号表项的指针作为其属性值;对于某个常数,则将存放它的常数表项的指针作为其属性值。 2.1.2 词法记号的属性 position = initial + rate ? 60的记号和属性值: ?id,指向符号表中position条目的指针? ?assign _ op? ?id,指向符号表中initial条目的指针? ?add_op? ?id,指向符号表中rate条目的指针? ?mul_ op? ?number,整数值60? 2.1.3 词法错误 词法分析器对源程序采取非常局部的观点 难以发现下面的错误 fi (a == f (x) ) … 在实数是a.b格式下,可以发现下面的错误 123. 紧急方式的错误恢复 错误修补 2.2 词法记号的描述与识别 2.2.1 串和语言 从词法分析的角度看程序设计语言,它是由记号组成的集合。 定义2.1 语言L是有限字母表∑上有限长度字符串的集合。 字母表是组成字符串的所有字符的集合。换句话说,字符串中的所有字符取自字母表 定义中强调
您可能关注的文档
最近下载
- 《毛选》读后感打印版.pdf VIP
- 自动水平缠绕机装置设计--毕业论文设计.doc VIP
- 南京医科大学《马哲》1中国马克思主义与当代3.ppt VIP
- 2024年新教科版五年级下册科学全册精编知识点(超全).doc VIP
- 2023机电工程装配式支吊架安装及验收规程.docx VIP
- 课件:直升机基本维护擦洗和润滑保养工作课件讲解.pptx VIP
- 新材料科学与技术产业领域研究与应用的合作模式与合作机制.pptx VIP
- 2025年新洋丰肥业万新型复合肥陶赖昭工业园化工业园新洋丰环评报告.docx VIP
- 肾盂输尿管连接部梗阻护理常规及健康教育.docx VIP
- 2025年安全工器具管理规定.docx VIP
原创力文档

文档评论(0)