编译原理——实验1
实验要求
1) 基于词法规则设计词法分析器(20分)
画出确定的有穷自动机(确定化),并提供必要的文字说明。提交状态转换图.doc
2) 词法分析程序的编程实现(80分)
(1) 编程实现词法分析器,提交可执行词法分析程序的源程序
用java(或C++或C语言或其它预言)手工编程实现词法分析程序,该词法分析程序能够读取测试输入文件中的源程序,并将其词法分析的结果即token序列或词法分析的所有错误信息输出到tokenOut.txt中,以便于检查你的词法分析程序的正确性。输出的错误信息要包括错误所在行数,错误类型等信息(编译原理课程设计文件夹下有测试输入源文件testX.txt)。
(2) 提交所生成的词法分析程序的测试方案.doc
注:将状态转换图.doc、源程序、以及词法分析程序测试方案.doc文件放在一个文件夹下,按照“班级学号姓名”的命名方式打包提交。如果还有其它需要说明的问题须写在readme.doc中。
程序
输入:
文件(包含java源程序或txt文件)
输出:
tokenOut.txt(文件)
token序列
每个token包括两个方面的内容:
token = 字符串(语义)+类型(语法)
举例:
if 关键字
y 标识符
= 操作符
3 数字
需要注意的问题
1)mjava中使用的是整数,未使用浮点数(