全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验一:词法分析器一、 实验目的:1强化对系统软件综合工程实现能力的训练;2加强对词法分析原理、方法和基本实现技术的理解;二、 实验内容:用C语言或者其他的高级语言作为宿主语言完成C1语言的词法分析器的设计和实现。 三、 实验要求:1. 编写C0语言的词法分析器的源程序并调试通过。其中词法分析程序既可以自己手动去完成,也可以利用LEX自动生成。2. 通过测试程序的验收; 3.实验报告按照提供的模板填写:(1)功能描述:该程序具有什么功能?(2)程序结构描述:函数调用格式、参数含义、返回值描述、函数功能;另外可以附加函数之间的调用关系图、程序总体执行流程图。(3)实验总结:你在编程过程中花时多少?多少时间在纸上设计?多少时间上机输入和调试?多少时间在思考问题?遇到了哪些难题?你是怎么克服的?你对你的程序的评价?你的收获有哪些?四、 评判标准:1. 输出正确的实验结果;2. 代码清晰,格式良好;3. 提交报告,报告阐述清楚。五、 程序工作说明:(以C0语言为例)程序的输入文件是任何一个目录下的文件格式的C0语言程序段。程序的输出文件是以xml格式表示的词法分析的结果。该输出将作为下个实验语法分析的输入文件。(注意:也可以自定义格式,但需要在报告中给出格式说明)词法分析结果输出成xml文件格式为程序输入/输出示例:如源程序为如下:1 void f1(int a,int b) 2 a = 1;3 b = a+b;4 5 void main() 6 7 int a100;8 int b;9 float c;10 ab=a;11 if(cb)12 f1(a,b);13 14 则要求得到如下输出文件: token line=11 type=LT string= 六、 相关知识:词法分析器任务:输入源程序;扫描、分解字符串,识别出一个个单词(定义符、标识符、运算符、界符、常数)。单词符号的表示:1) 需要对单词分类,每一个识别出来的单词都属于不同的类型public enum TokenType /关键字IF,ELSE,WHILE,RETURN,VOID,INT, /运算符 + - * / = = != PLUS,MINUS,STAR,SLASH, LT,LTEQ,GT,GTEQ,EQ,NEQ,ASSIGN,/界符 ; , ( ) /* */SEMI,COMMA,LPAREN,RPAREN,LSQUAR,RSQUAR,LBRACE,RBRACE,LCOMMENT,RCOMMENT,ID, /标识符NUMBER, /数字常量 IDletter(letter|didit)* NUMBERdigit digit * lettera|b|z|A|B|Z digit0|9 NONTOKEN,ERROR,ENDFILE / 其它;2) 单词符号的数据结构设计public class Tokenstring str;/单词字符串 TokenType ttype;/单词的类型int line;/所在行号信息3) 词法分析 状态转换图Sdigit需要回退一个字符;不需要字符回退;开始状态;=非digit1234567digitletter非letter|digitrletter|digitrS89=!/+ - * , ; ( ) 其他非*=非=非=非=非=非*非/S七、 参考书目:1. Kenneth C. Louden著,冯博琴译编译原理及实践,机械工业出版社,2000年2. Andrew W
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东佛山市三水区大塘镇永平幼儿园春季学期招聘合同制员工2人考试参考题库及答案解析
- 2026国新央企金融服务(北京)有限公司相关岗位招聘笔试备考试题及答案解析
- 第八章 第三节 环境保护与绿色化学 同步课时训练 高中化学人教版(2019)必修第二册
- 2026福建福州市仓山区发展和改革局编外人员招聘3人考试备考试题及答案解析
- 2025年攀枝花市西区事业单位招聘考试试题及答案解析
- 2026广东深圳市龙岗区布吉街道可园第一幼儿园招聘1人考试备考试题及答案解析
- 2026广东佛山市高明建设投资集团有限公司(第五期)招聘1人笔试模拟试题及答案解析
- 2026贵阳云瑞人力资源服务有限公司招聘笔试模拟试题及答案解析
- 北师大版七年级数学下册 垂直 教案
- 第二节 光的全反射现象的应用教学设计中职基础课-机械建筑类-高教版(2021)-(物理)-55
- 粽子的数学知识
- 紫外可见分光光度法 2
- 老年人与儿童火灾安全教育
- 国旗班指挥刀训练动作要领
- 室内钢结构夹层施工及方案
- 高热患者的中医护理常规
- JTT495-2014 公路交通安全设施质量检验抽样方法
- 初中数学基于核心素养导向的大单元教学设计(共50张)
- 奇瑞瑞虎3xe说明书
- 少女乙女的恋爱革命全中文攻略
- 干制食用菌HACCP计划
评论
0/150
提交评论