有穷自动机的化简与确定化

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编译原理课程设计报告
1 课题综述
1.1 课题来源
由于很多计算机系统都配有多个高级语言的编译程序,对有些高级语言甚至 配置了几个不同性能的编译程序。从功能上看,一个编译程序就是一个语言翻译 程序。语言翻译程序把源语言书写的程序翻译成目标语言的等价程序。经过编译 程序的设计可以大大提高学生的编程能力。
5 程序调试...............................................................................................................................8
5.1 调试步骤 ............................................................................................................................................ 8 5.2 发现的问题 ........................................................................................................................................ 9 5.3 解决的方法 ........................................................................................................................................ 9
致 谢.....................................................................................................................................13
参考文献................................................................................................................................. 14
编译程序的工作过程通常是词法分析、语法分析、语义分析、代码生成、代 码优化。由于现在有很多词法分析程序工具都是基于有穷自动机的,而词法分析 又是语法分析的基础,所以我们有必要进行有穷自动机的确定化和最小化。
1.2 课题意义
编译程序的这些过程的执行先后就构成了编译程序的逻辑结构。有穷自动机 (也称有限自动机)作为一种识别装置,它能准确地识别正规集,即识别正规文法 所定义的语言和正规式所表示的集合,引入有穷自动机这个理论,正是为词法分 析程序的自动构造寻找特殊的方法和工具。正规表达式与自动机理论在词法构造 乃至整个编译器构造过程中起着至关重要的作用,同时它们被广泛应用于计算机 科学的各个领域,它们与计算机其它学科之间也有着很大的联系。
6 运行与测试...........................................................................................................................9
总 结.....................................................................................................................................12
课题 名称
有穷自动机的化简和确定化
1. 调研并熟悉有穷自动机化简和确定化的基本功能、数据流程与工作规程;
设计 2. 通过实际编程加深对基本原理的理解,提高实践能力; 目的 3. 学习开发资料的收集与整理,学会撰写课程设计报告。
实验 1. 微型电子计算机(PC); 环境 2. 安装 Windows 2000 以上操作系统,Visual C++6.0 开发工具。
2 系统分析...............................................................................................................................2
2.1 涉及的知识基础................................................................................................................................. 2 2.2 总体方案............................................................................................................................................. 3 2.3 解决问题的基本思路......................................................................................................................... 3 2.4 功能模块图......................................................................................................................................... 4
1. 利用课余时间去图书馆或上网查阅课题相关资料,深入理解课题含义及设
计要求,注意材料收集与整理;
任务 要求
2. 在第 14 周末之前完成预设计,并请指导教师审查,通过后方可进行下一 步工作; 3. 本课题主要实现有穷自动机的化简和确定化等功能。
4. 结束后,及时提交设计报告(含纸质稿、电子稿),要求格式规范、内容
关键词:NFA;DFA;确定化;最小化;正规语言;有穷自动机;
目录
1 课题综述................................................................................................................................1
完整、结论正确,正文字数不少于 3000 字。 工作进度计划
序号
起止日期
工作内容
在预设计的基础上,进一步查阅资料,完善设计方案, 1 2010.12.27~2010.12.27
形成书面材料。
设计总体方案,构建绘制流程框图,编写代码,上机 2 2010.12.28~2010.12.28
调试。
3 2010.12.29~2010.12.29 测试程序,优化代码,增强功能,撰写设计报告。
4 代码编写................................................................................................................................7
4.1 NFA 到 DFA 的转化 .......................................................................................................................... 7
1.1 课题来源............................................................................................................................................. 1 1.2 课题意义............................................................................................................................................. 1 1.3 预期的目标......................................................................................................................................... 1 1.4 面对的问题......................................................................................................................................... 1 1.5 需解决的关键技术............................................................................................................................. 1
淮阴工学院 编译原理课程设计报告
选题名称: 有穷自动机的化简与确定化
系(院):
计算机工程学院
专 业:
计算机科学与技术
班 级:
软件 1071
姓 名: XXX
学 号: XXXXXXX
指导教师:
王文豪、陈剑洪
学年学期: 2010 ~ 2011 学年 第 1 学期
2010 年 12 月 30 日
设计任务书
提交软件代码、设计报告,参加答辩,根据教师反馈 4 2010.12.30~2010.12.30
意见,修改、完善设计报告。
指导教师(签章):

月Fra Baidu bibliotek

摘要: 编译原理课程是高校计算机类专业的重要基础和骨干课程,对计算机专业的学生的
重要性与高等数学对理科学生的重要性几乎可以相提并论。内容包括语言和文法、词 法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码 生成。在编译系统中,词法分析阶段是整个编译系统的基础。对于单词的识别,有穷 自动机 FA 也叫有限自动机,是一种十分有效的工具,机器识别的语言是正规语言。有 穷自动机由其映射 f 是否为单值而分为确定的有穷自动机 DFA 和非确定的有穷自动机 NFA,唯一区别是它们的转移函数不同。DFA 对每一个可能的输入只有一个状态的转移, NFA 对每一个可能的输入可以有多个状态转移,接受到输入时从这多个状态转移中非确 定地选择一个。NFA 可以转化为 DFA,确定化后的自动机可以最小化。
3 系统设计...............................................................................................................................4
3.1 实现原理............................................................................................................................................. 4 3.2 实现方法............................................................................................................................................. 5 3.3 详细流程图......................................................................................................................................... 6
相关文档
最新文档