编译原理词法分析器的构造(共12页).doc
《编译原理词法分析器的构造(共12页).doc》由会员分享,可在线阅读,更多相关《编译原理词法分析器的构造(共12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实 验 报 告(2014 / 2015 学年 第 一 学期)课程名称编译原理实验名称词法分析器的构造实验时间2015年4月10日指导单位南京邮电大学指导教师蒋凌云学生姓名孙雪禄班级学号B学院(系)计算机学院、软件学院专 业软件工程(服务外包)专心-专注-专业实 验 报 告实验名称词法分析器的构造指导教师蒋凌云实验类型上机实验实验学时4实验时间2015.4.10一、 实验目的和要求 设计、编制、调试一个词法分析程序,对单词进行识别和编码,加深对词法分析原理的理解。二、实验环境(实验设备) Microsoft Visual Stdio 2010二、 实验原理及内容 1、实
2、验内容:设计并实现一个词法分析器,实现对指定位置的类C语言源程序文本文件的读取,并能够对该源程序中的所有单词进行分类,指出其所属类型,实现简单的词法分析操作。例如下面为一段C语言源程序:main() int a,b; a = 10; b = a + 20;要求输出如下(可以自行分类,分类原则请在报告中说明)(1,main)(5,()(5,)(5, )(1,int)(2,a)(5,,)(2,b)(5,;)(2,a)(4,=)(3,10)(5,;)(2,b)(4,=)(2,a)(4,+)(3,20)(5,;)(5,) 2、实验要求:(1)、允许用户自己输入源程序并保存为文件(2)、系统能够输出经过
3、预处理后的源程序(去掉注释、换行、空格等)(3)、能够将该源程序中所有的单词根据其所属类型(整数、保留字、运算符、标识符等。定义的类C语言中的标识符只能以字母或下划线开头)进行归类显示,例如:识别保留字:if、int、for、while、do、return、break、continue等,其他的都识别为标识符;常数为无符号整形数;运算符包括:+、-、*、/、=、=、,=等)5分隔符(,,;,(,))(2)、接着写出用到的简单文法并转换成状态转换图:=字母|字母|数字031字母非数字或字母字母或数字数字数字非数字+-*/=, ; ( ) :=数字|数字:=+|-|*|=:=,|;|(|)|保留字
4、是一种特殊的标识符,不独立写出其文法031字母非数字或字母字母或数字数字数字非数字+-*/=a&A=A&A=0&A=9)return true;elsereturn false;bool REAERVE(char *a) /判断标识符是否为保留字if(strcmp(a,if)=0)cout(1,a)endl;return true;if(strcmp(a,int)=0)cout(1,a)endl;return true;if(strcmp(a,for)=0)cout(1,a)endl;return true;if(strcmp(a,while)=0)cout(1,a)endl;return t
5、rue;if(strcmp(a,do)=0)cout(1,a)endl;return true;if(strcmp(a,return)=0)cout(1,a)endl;return true;if(strcmp(a,break)=0)cout(1,a)endl;return true;if(strcmp(a,continue)=0)cout(1,a)endl;return true;if(strcmp(a,main)=0)cout(1,a)endl;return true;return false;下面附上全部的代码:#include #include #include using names
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 词法 分析器 构造 12
限制150内