- 1、本文档共171页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理第3章_词法分析
Ch3.词法分析 词法分析是编译的第一个阶段,在单词的级别上分析和翻译源程序。 理论基础: ①有限自动机理论 ②有限自动机理论与正规文法、正规式之间在描 述语言方面有一一对应的关系。 本章在编译程序中的地位 3.1.1 设计词法分析器时应考虑的几个问题 执行词法分析的程序称为又称为词法分析器或扫描器. 词法分析的任务:从左至右逐个地扫描源程序的字符串, 按照词法规则识别出一个个正确的单词,并转换为相应的二元式形式,交给语法分析使用。 把作为字符串的源程序改造成单词符号串的词法分析是编译的基础。 3.1.2 词法分析阶段的必要性 词法分析的工作纳入整个语法分析中一揽子地进行,原则上是可行的。 在设计一个编译程序时,通常是把对源程序的结构分析分为词法分析和语法分析两个相对独立的阶段来完成。 第一,描述单词的结构比描述源程序的其它语法结构要简单得多,仅使用3型文法也就基本够用了。 第二,由于把词法分析和语法分析分开,可使编译程序各部分的功能更为单一,整个编译程序的结构也更加清晰,从而有利于编译程序的编写和调整。 上述词法分析和语法分析两个阶段的划分,仅仅是对整个编译程序的逻辑功能而言,而不一定指的是编译程序的执行流程。 3.1.3 词法分析器的输出形式 词法分析器输出的单词常常表示为二元式形式 (单词种别,单词符号的属性值) 单词种别提供给语法分析程序使用; 单词符号的属性值提供给语义分析程序使用。 具体的分类设计方法以方便语法分析程序使用为原则。 3.1.3 词法分析器的输出形式 程序语言的单词符号一般分为五种: 关键字(保留字或基本字):如 if,then,else,while,do等 标识符:用来表示各种名字,如 x1 常量:如 256,3.14,true, ’abc’ 运算符:如 +、-、*、/ 等等 分界符:如 逗号,分号,冒号等 3.1.3 词法分析器的输出形式 单词种别: 一个语言的单词符号如何分类、分为几类、如何编码主要取决于处理上的方便。通常,每种单词对应一个整数码。 注意:保留字、运算符和界符的个数确定, 标识符和常数的个数不确定。 保留字:可全体视为一种,也可一字一种; 标识符:统归为一种; 常数:统归为一种,或按整、实、布尔等再分; 运算符和界符:一符一种,或统归为一种。 3.1.3 词法分析器的输出形式 单词符号的属性值 单词符号的属性是指单词符号的特征值 。 如果一个种别只含有一个单词符号,那么对于这个单词符号,种别编码就完全代表它自身了,因而不需要属性值。 若一个种别含有多个单词符号,那么,对于它的每个单词符号,除了给出种别编码之外,还应给出有关单词符号的属性值。 3.1.3 词法分析器的输出形式 单词符号的属性值 标识符和常数 标识符的内部码 (如ASCII码等等)和常数本身的值 (二进制,逻辑值等)来表示。 标识符的符号表入口地址作为其单词符号的属性值,常量在其常量表中的入口地址作为其单词符号的属性值。 每个基本字占一个单词种别,单词符号的属性值缺省。 对于界符,运算符通常一个符号一个种别,单词符号的属性值缺省 例: 参见P42.表3.1 单词符号及种别编码 3.1.5 源程序的输入、预处理及超前有哪些信誉好的足球投注网站 3.1.5 源程序的输入、预处理及超前有哪些信誉好的足球投注网站 1.输入缓冲区 词法分析器工作的第一步是输入源程序文本。 输入串一般放在一个输入缓冲区中。词法分析器的工作可以直接在输入缓冲区中进行。但在许多情况下,可以先预处理输入串,识别工作将更方便。 扫描缓冲区的结构 词法分析器对扫描缓冲区进行扫描时一般使用两个指示器,一个指向当前正在识别的单词的开始位置, 即指向新单词的首字符; 另一个用于向前有哪些信誉好的足球投注网站以寻找单词的终点。 不论扫描缓冲区设得多大都不能保证单词符号不会被缓冲区的边界所打断。因此,扫描缓冲区最好使用如下一分为二的区域: 在扫描缓冲区中扫描 假定每个半个区可容120个字符,而这两个半区又是互补的。 如果有哪些信誉好的足球投注网站指示器从单词起点出发有哪些信誉好的足球投注网站到一个半区的边缘但尚未达到单词的终点,那么就调用预处理子程序,令其把后续的120个字符装入另一个半区。 认定在另一半区一定可以达到单词的终点。这意味着对标识符和常数的长度实际上必须加以限制,否则即使缓冲区再大也无济于事。 3.2 词法分析程序设计 构造词法分析程序的方法 词法分析程序的编写 3.2 有限自动机 3.2.1 确定的有限自动机 3.2 有限自动机 3.2 有限自动机 3.2 有限自动机 3.2 有限自动机 3.2 有限自动机 3.2 有限自动机 3.2
您可能关注的文档
- 绿色环保建筑设计.ppt
- 编译原理 第 3 讲 词法分析.ppt
- 编译原理 第三章 第二部分.ppt
- 编译原理-2-形式语言与自动机-I.ppt
- 编译原理 陈火旺.ppt
- 综艺节目编导.ppt
- 编译原理word版.doc
- 编译原理03_2.ppt
- 编译原理03.ppt
- 编译原理 第3章 词法分析与有穷自动机(第5-8讲).ppt
- 辽宁省大连市海湾高级中学2024届高三下学期期初考试数学试题试卷.doc
- 辽宁省本溪高级中学2024年高三下学期期中数学试题.doc
- 辽宁省大连瓦房店市第六高级中学2024届高三5月综合测试(三模)数学试题.doc
- 辽宁省大连市重点中学2023-2024学年高三协作体联考(一模)数学试题.doc
- 辽宁省本溪市第二中学2024届高三下-第二次联考数学试题试卷.doc
- 辽宁省北镇市高级中学2024届高三下学期港澳台入学考试数学试题.doc
- 辽宁省大连市一0三中学2023-2024学年校高三年级四月考试数学试题.doc
- 辽宁省大连市辽宁师范大学附属中学2024年高三3月份两校联考数学试题.doc
- 辽宁省朝阳市柳城高级中学2024届招生全国统一考试考前演练卷(三)数学试题.doc
- 辽宁省大连市育明高级中学2024年高三下学期第二次联考数学试题试卷.doc
最近下载
- 马工程《人力资源管理》章节知识点-核心要点.doc
- 金相检验-变形铝合金的相鉴别.pptx VIP
- NB_T 47015-2023 压力容器焊接规程.pdf
- 统编版(2024新版)一年级上册道德与法治第一、二单元1-8课 共8课时教学设计.docx
- 数据资产管理平台用户使用手册说明书.pdf VIP
- 林业有害生物发生及成灾标准-森林病虫害防治.doc VIP
- 22J403-1楼梯栏杆栏板.pptx VIP
- 2023年中国电信解决方案支撑经理认证考试题库大全-上(单选题汇总).pdf VIP
- NB∕T 10179-2019 -煤矿在用高压开关设备电气试验规范.pdf
- 培训课件-糖尿病肾病腹膜透析.ppt
文档评论(0)