- 1、本文档共135页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
04-词法分析-备课课件
编译原理 第四章 词法分析 主要内容 本章学习目标 4.1 词法分析程序的设计 4.2 单词的描述工具 4.3 有穷自动机 4.4正规式和有穷自动机的等价性 4.5正规文法和有穷自动机的等价性 4.6 词法分析程序的自动生成器—LEX 小结本章 重点习题解析 作业 相关术语的回顾(英文版) 本章学习目标 一.学习目标 理解词法分析程序的功能和有限自动机及其化简方法; 掌握正规表达式与正规文法和理解状态转换图的实现; 了解词法分析器的自动产生。 二.课程安排 6学时 本章重点 有穷自动机是构造词法分析程序的理论基础。 本章主要介绍词法分析程序的设计原理和构造方法,重点介绍有穷自动机的基本概念以及正规文法、正规表达式与有穷自动机之间的相互关系。 4.1词法分析程序的设计 实现词法分析(lexical analysis)的程序 逐个读入源程序字符并按照构词规则切分成一系列单词。单词是语言中具有独立意义的最小单位,包括保留字、标识符、运算符、标点符号和常量等。 词法分析是编译过程中的一个阶段,在语法分析前进行 。也可以和语法分析结合在一起作为一遍,由语法分析程序调用词法分析程序来获得当前单词供语法分析使用。 词法分析程序和语法分析程序的关系 词法分析程序的任务 词法分析分离的考虑 词法分析从语法分析独立出来的原因: 简化设计 改进编译效率 增加编译系统的可移植性 常常遇到的术语 Token 单词,词标,符号 lexeme 词素,词位 pattern 模式,式样 帮助理解术语 In general,there is a set of strings in the input for which the same token is produced as output. This set of strings is described by a rule called a pattern associated with the token. The pattern is said to match each string in the set. A lexeme is a sequence of characters in the source program that is matched by the pattern for a token. e.g. Const pi=3.14159;中的pi是token “identifier”的lexeme,其pattern为letter followed by letters and/or digit. 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 单词符号及输出单词的形式 4.2单词的描述工具 程序设计语言中的单词是基本语法成分。 单词符号的语法可以用有效的工具加以描述,并且基于这类描述工具,实现词法分析程序的自动构造。 程序设计语言的单词的语法都能用正规文法和正规式描述。 正规文法 3型文法: 任一产生式α→β的形式都为A→aB或A→a,其中A∈VN ,B∈VN ,a∈ VT * 单词符号的两种定义方式: 正规文法,以标识符为例: I→l|Il|Id 或 I→l|lT T→l|d|lT|dT 其中,l代表a~z中任一字母; d代表0~9中任一数字 正规式,以标识符为例: l ( l | d )* 正规式 正规式也称正则表达式,正规表达式(regular expression)是说明单词的模式(pattern)的一种重要的表示法(记号),是定义正规集的数学工具。我们用以描述单词符号。下面是正规式和它所表示的正规集的递归定义。 正规式 定义(正规式和它所表示的正规集):设字母表为?,辅助字母表?`={?,?,?,?,?,?,?}。 1. ?和?都是?上的正规式,它们所表示的正规集分别为{?}和{ }; 正规式 2.任何a? ?,a是?上的一个正规式,它所表示的正规集为{a}; 3.假定e1和e2都是?上的正规式,它们所表示的正规集分别为L(e1)和L(e2),那么,(e1), e1? e2,
您可能关注的文档
- 01-intro CommonCADS课件.ppt
- 01-json解析数据课件.ppt
- 01-第1章 Flash操作基础课件.ppt
- 01-网站设计与开发之静态网页课件.ppt
- 01-开发工具安装,系统配置,make file课件.ppt
- 01) AutoCAD基础知识课件.ppt
- 01-01 三大数据库概念差异(65 页)课件.ppt
- (8.21主管培训)仰望星空,脚踏实地课件.ppt
- 01-Oracle课件.ppt
- 010科技英语英文摘要撰写课件.ppt
- 2024-2030年中国松香市场运行格局与发展前景预测分析研究报告.docx
- 2024-2030年中国松香市场运行格局与发展前景预测分析报告.docx
- 2024-2030年中国松香甘油酯行业发展分析及投资风险预警与发展策略研究报告.docx
- 定制家具项目风险识别与评估综合报告.docx
- 2024-2030年中国松香甘油酯行业市场发展趋势与前景展望战略分析报告.docx
- 2024-2030年中国松香胺行业发展分析及发展前景与趋势预测研究报告.docx
- 2024-2030年中国松香芹醇行业市场发展趋势与前景展望战略分析报告.docx
- 2024-2030年中国松香行业市场发展趋势与前景展望战略研究报告.docx
- 2024-2030年中国板卡行业发展趋势与投资战略研究报告.docx
- 2024-2030年中国松香酸三甘醇(CAS:8050-25-7)行业市场发展趋势与前景展望战略分析报告.docx
文档评论(0)