编译技术图式(第三章 词法分析)

编译技术图式(第三章 词法分析)

1、词法分析概述


2、词法分析器和语法分析器的关系


(1)词法分析作为单独的一遍

(2)词法分析作为子程序

 

 

3、词法分析器的输出


二元式 (单词类别<整数编码>,单词属性) 

依赖于所对应的程序设计语言

  关键字“一字一码”

  标点符号“一字一码”

  对标识符、常数、字符串等“一类一码”

  丢弃其它不相关字符 (注释、空白符等)

4、词法分析器的实现


1)正则表达式:一种用来描述字符串集合的工具

 

2)字母表:一个有限的符号集合

集合{0, 1}是二进制字母表

 

3)字母表上的一个“串”或“句子” :字母表中符号的一个有穷序列

串s的长度,记作 |s|,指s中符号出现的次数

空串是长度为0的串,用ε表示

 

4)语言:给定字母表上一个任意的可数的串集合

 

5)正则表达式的递归定义

R*任意多次、R+至少一次

 

6)正则表达式的实现——有限自动机

有限自动机:确定的有限自动机/非确定的有限自动机

  • 有限的有向图
  • 初态唯一
  • 有向边上标记字符,表示状态转换
  • 若干终态(至少一个)

 

 

 

 

 

 

 

posted @ 2019-09-30 13:26  日月同诲  阅读(225)  评论(0编辑  收藏  举报