编译原理chapter3.pptVIP

  • 6
  • 0
  • 约1.86万字
  • 约 71页
  • 2017-06-22 发布于北京
  • 举报
例: 对下图所示的NFA M求正规式R,使L(R)=L(M)。 3.4 词法分析器的自动生成 把一个正规式编译(或称转换)为一个NFA进而转 换为DFA,而这个NFA或DFA正是识别该正规式所表示 的语言(正规集)的识别器。基于这种方法可以构造出词法 分析程序(扫描器),这就是扫描器的自动生成原理。 LEX是一个广泛使用的工具,它用于构造各种各样语 言的词法分析程序。LEX编译系统的作用如图: LEX程序由三部分组成:说明部分、转换规则和辅助过程,它们之间用%%做间隔,其一般格式为: {辅助定义部分} %% {识别规则部分} %% {用户子程序部分} (1)辅助定义部分包括变量的说明、常量说明和正规式定义,所谓正规式定义是形如如下形式的一系列定义: d1→r1 d2→r2 … dn→rn 其中, di是代表这个正规式的简名,ri是Σ∪{d1,d2, …,di-1}上的正规式,即在ri中允许出现字母表Σ中的字符和前面定义的简名(d1,d2, …,di-1) (2)识别规则部分是LEX源程序的核心。它是一张表,左边一列是正规式,右边一列是相应的动作。 P1 {action1}

文档评论(0)

1亿VIP精品文档

相关文档