正规式、NFA、DFA、MFA的转换解析.docVIP

  • 291
  • 0
  • 约5.06万字
  • 约 59页
  • 2016-10-19 发布于湖北
  • 举报
计算机专业软件类课程实验报告 课程名称: 编译原理 实验题目: 正规式、NFA、DFA、MFA的转换 实验小组成员: 实验小组组长: 任课教师: 专业名称: 计算机科学与技术 班级名称: 计科1班 实验起止时间: 2014-5-19~2014-5-29 一、实验目的 1、理解什么是正规式 2、理解NFA、DFA、MFA的概念; 3、掌握正规式和NFA之间的等价变换; 4、掌握NFA和DFA之间的等价变换; 5、掌握DFA和MFA之间的等价变换; 6、了解程序设计语言Java的语言机制。 实验内容 程序的流程图如下所示: 根据用户输入的表达式,验证是否为合法的正规式 2、根据正规式,将其转换为NFA 3、根据NFA,将其转换为DFA 4、根据DFA,将其转换为MFA 实验”|”,”.”,”*”等符号位置是否合法,输入的表达式中是否含有非法字符 2、正规式转为NFA 对经过验证的正规式进行一个字符一个字符的判断,其中”*”的优先级最高,其次是”.”,最后是”|”。在转换过程中,构造两个栈,一个栈是开始符号栈,用来存放创建的开始符号,一个是终结符号栈,用来存放创建的终结符号。通过对”|”,”.”,”*”优先级的的不同,对两个栈进行不同的处理,将产生的结点存入ArrayListNode中 3、NFA转为DFA 将从第一个文本框中读出的NFA

文档评论(0)

1亿VIP精品文档

相关文档