这是我自己写的一个比较简陋的词法分析吧
但也是耗费了心血的
还是放在这里希望对你们有用~~
实验指导书里面的图都是我用心画的哈哈哈
实验报告:http://download.csdn.net/download/qq_32285991/10125099
实验要求:
实验1 词法分析
实验目的
1.巩固对词法分析的基本功能和原理的认识。
2.能够应用自动机的知识进行词法分析。
3.理解并处理词法分析中的异常和错误。
实验内容
设计实现类高级语言的词法分析器,基本功能为识别以下几类单词:
Ø 标识符(由大小写字母、数字以及下划线组成,但必须以字母或者下划线开头)
Ø 关键字(①类型关键字:整型、浮点型、布尔型、记录型;②分支结构中的if和else;③循环结构中的do和while;④过程声明和调用中的关键字)
Ø 运算符(①算术运算符;②关系运算符;③逻辑运算)
Ø 界符(①用于赋值语句的界符,如“=”;②用于句子结尾的界符,如“;”;③用于数组表示的界符,如“[”和“]”;④用于浮点数表示的界符“.”)
Ø 常数(无符号整数和浮点数,包括科学计数法,字符串常数等)
Ø 注释(/*……*/形式)
除此之外,可以实现一些额外功能,如
(1) 识别字符常数、八进制和十六进制数。
(2) 能够应用子集构造法从输入的NFA自动生成DFA。
实验要求
(1)要求基于DFA技术设计词法分析器。
(2)系统的输入形式:要求能够通过文件导入FA转换表和测试用例,可以通过用户界面显示并编辑测试用例。测试用例要涵盖“实验内容”中列出的各类单词,并包含各种单词拼写错误。
(3)系统的输出分为两部分:一部分是打印输出词法分析器的
DFA
转换表。另一部分是打印输出源程序对应的
token
序列,
版权声明:本文为qq_32285991原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。