收藏 分享(赏)

纯垛生态湿地项目可行性研究报告.doc

上传人:志在邹 文档编号:177748 上传时间:2018-12-01 格式:DOC 页数:11 大小:47KB
下载 相关 举报
纯垛生态湿地项目可行性研究报告.doc_第1页
第1页 / 共11页
纯垛生态湿地项目可行性研究报告.doc_第2页
第2页 / 共11页
纯垛生态湿地项目可行性研究报告.doc_第3页
第3页 / 共11页
纯垛生态湿地项目可行性研究报告.doc_第4页
第4页 / 共11页
纯垛生态湿地项目可行性研究报告.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方编译原理论文题 目 词法分析器的设计与实现姓 名 学 号 专业班级 指导老师 -专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方2015年 6月 15一、引言 .3二、词法分析器的设计 .42.1词的内部定义 .42.2词法分析器的任务及功能 .52.2.1任务 .52.2.2 功能: .52.3单词符号对应的种别码: .6三、词法分析器的实现 .63.1主程序示意图: .7

2、3.2函数定义说明 .73.3程序设计实现及功能说明 .83.3.1关键字 .83.3.2关键字的定义 .83.3.3符合的关键字的查找 .8四、词法分析程序的 C语言源代码: .8五、 结果分析: .11-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方摘要:词法分析是中文信息处理中的一项基础性工作。词法分析结果的好坏将直接影响中文信息处理上层应用的效果。通过权威的评测和实际应用表明,IRLAS 是一个高精度、高质量的、高可靠性的词法分析系统。 众所周知,切分歧义和未登录词识别是中文分词中的两大难点。理解词

3、法分析在编译程序中的作用,加深对有穷自动机模型的理解,掌握词法分析程序的实现方法和技术,用 c语言对一个简单语言的子集编制一个一遍扫描的编译程序,以加深对编译原理的理解,掌握编译程序的实现方法和技术。关键词:词法分析器 扫描器 单词符号 预处理-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方一、引言运用 C语言设计词法分析器,由指定文件读入预分析的源程序,经过词法分析器的分析,将结果写入指定文件。本程序是在 Visual Studio环境下,使用 C语言作为开发工具。基于实验任务的内容及目的,实现初步的需求

4、分析,具备词法分析器的基本功能和整体构架。逐步细化其功能,做到相应模块的具体化。画出未成熟的流程图,确定整体设计的走向,在一定范围内约束编程活动,确保没有大的问题及缺陷存在,然后通过将来的具体的编程设计完善流程图。完成计算机翻译过程的关键阶段,它为后面的语法分析、语义分析做好准备,打好基础,以便快速地、高质量地生成目标语言程序。-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方二、词法分析器的设计由于我们规定的程序语句中涉及单词较少“故在词法分析 阶段忽略了单词输入错误的检查“而将编译程序的重点放在中 间代码

5、生成阶段$词法分析器的功能是输入源程序“输出单词 符号$规定输出的单词符号格式为如下的二元式%!单词种别“ 单词自身的值#2.1 词的内部定义 对常量,变量,临时变量,保留关键字(if,while,begin,else,do 等)、关系运算符、逻辑运算符、分号、括号等,规定其内部定义如附表所示-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方2.2 词法分析器的任务及功能2.2.1任务就编译器基本结构而言,词法分析(lexical analysis)是编译过程的第一阶段。实际上,在词法分析之前,有些编译器模型

6、存在编译预处理阶段,C 语言就是一个典型的例子。不过,大多数 Pascal编译器都不存在预处理器。本书对编译预处理不作讨论。词法分析的任务是从左到右扫描与分析构成源程序的字符流(字符串),把字符流分解为多个单词(token)。每个单词都是具有独立含义且不可再分割的字符序列。在编译器框架中,完成词法分析任务的模块称为词法分析器。2.2.2 功能:词法分析器的基本功能是,按照语言的定义规则,逐个地读入源程序的符号,识别出对语言有意义的符号串,即单词符号;然后分析单词符号的属性,并把单词符号及其属性填写在表中; 同时把源程序改造成等价的计算机内部表示单词记号, 以便编译的后续阶段使用。 (1)识别出

7、源程序中的各个单词符号,并将其转换成内部编码形式; (2)删除无用的空白字符、回车字符以及其他非实质性字符; (3)删除注释(4)进行词法检查,报告所发现的错误。2.3单词符号对应的种别码:单词符号对应的种别码单词符号 种别码 单词符号 种别码bgin 1 : 17If 2 := 18Then 3 21do 5 23-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方lettet(letter|digit)*10 = 24dight dight* 11 = 25+ 13 ; 26 14 ( 27* 15 ) 2

8、8/ 16 # 0三、词法分析器的实现编写词法分析器,词法分析器能够识别关系算符,词法分析器能够识别标识符和关键字,词法分析器能够识别无符号数。编制一个能够分析三种整数、标识符、主要运算符和主要关键字的词法分析器。词法分析是从左向右扫描每行源程序的符号,拼成单词,换成统一的二元式 (单词种别码,单词符号的属性值)表示。对给定的程序通过词法分析器识别一个个单词符号,并以二元式(单词种别码,单词符号的属性值)显示,设计一个词法分析程序,理解词法分析器实现的原理,掌握程序设计语言中的各类单词的词法分析方法,加深对词法分析原理的理解。3.1 主程序示意图: 关键字表的初值。关键字作为特殊标识符处理,把

9、它们预先安排在一张表格中(称为关键字表),当扫描程序识别出标识符时,查关键字表。如能查到匹配的单词,则该单词为关键字,否则为一般标识符。关键字表为一个字符串数组,其描述如下:Char *rwtab6 = “begin”, “if”, “then”, “while”, “do”, “end”,; 置初值-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方-专业最好文档,专业为你服务,急你所急,供你所需-文档下载最佳的地方是(2)程序中需要用到的主要变量为 syn,token 和 sum。3.2 函数定义说明(1) search() 查找并识别当前单词类别,并给定单词类别二元式码,决定给定字符串类别码(即单词种别)和记录次序码。(2) alphaprocess() 识别当前是数组、保留字、标识符。(3) point() 识别当前字符串是指针。(4) digitprocess() 识别当前是常整数、小数、负小数。(5) otherprocess() 识别当前是其它(标点符号等)。(6) fopen() 在默认路径下打开分析程序并读入字符串。3.3 程序设计实现及功能说明3.3.1 关键字关键字:begin if end whlie else write read do call const charUntil produce repeat运算符:+ * /界符:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报