码迷,mamicode.com
首页 > 其他好文 > 详细

词法分析器

时间:2016-05-09 23:37:54      阅读:389      评论:0      收藏:0      [点我收藏+]

标签:

相关定义:

           识别器:可以在字符流中识别特定单词的程序。

           有限自动机(FA):识别器的一种形式化方法,包含一个有限状态集,一个字母表,一个转移函数,一个起始状态和一个或多个接受状态。

          正则表达式:有限自动机所接受的单词的集合,形成的语言。eg:n(ew|ot)

RE--NFA--DFA--最小DFA--词法分析器

       RE-NFA:Thompson构造法,re的连接,选择,闭包等有一个模板,各部分的连接也有一个模板,按照模板构造

       NFA--DFA:子集构造法(不动点计算,即即便计算过程中不断添加要计算的数据,但添加的数目是有限的,循环都会停止),即将&转移能到达的状态放到一个集合里,再对每个字符进行检索,将相同的状态放到一个集合里,对这些集合检索,直至没有需要检索的集合。

       DFA--最小DFA:Hopcroft算法:构造出所有DFA状态的集合。

词法分析器的实现:

   1.表驱动词法分析器:即利用两个表来查找匹配输入流

  2.直接编码词法分析器:即利用代码的跳转来实现,少了查表得开销。

  3.手工编码:自己实现各种细节,对输入函数的Nextchar和ROLLback都可以自己实现。

词法分析器

标签:

原文地址:http://www.cnblogs.com/xuehongyang/p/5475854.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!