[编译原理与设计] 2 词法分析
预处理:转换为字符串或字符
词法分析
1. 基本功能
1.1 词法规则
- 语言要素:语法(语言的描述规则)、语义(语言的含义)
- 巴科斯-诺尔范式BNF[元语言符号]
- <>:
- →(::=):表示“定义为”或“由……组合成”
- |: “或”
- 字母表Σ
- 符号串ω: Σ*中的元素
- 符号串长度|ω|
- 前缀、真前缀
- 后缀、真后缀
- 子符号串(子串)
递归定义: 构造方法
设∑为有限字母表,在∑上的正规式与正规集可递归定义如下正规式:集合符号,正规集:集合
ε和Ф是∑上的正规式,它们表示的正规集分别为{ε}和Ф
对任何a∈∑, a是∑上的正规式,它的正规集为{a}
若r,s都是正规式 , 它们的正规集分别为R和S , 则(r|s)、(r·s)、(r)也是正规式,它们分别表示的正规集是:R∪S,RS,R
有限次使用上述三条规则构成的表达式,称为∑上的正规式,仅
由这些正规式表示的集合为正规集
正规式的运算
文章图片
【[编译原理与设计] 2 词法分析】字母表→基本正则式→递归正则式
基本正则式: 字母本身
文章图片
正规式:词法的表示方法
确定有限状态机:词法的识别方法
推荐阅读
- Java设计模式|Java设计模式之概述与七大设计原则
- 关于MySQL|关于MySQL B+树索引与哈希索引详解
- [编译原理与设计] 1-2 编译器介绍
- 中国废塑料回收业前景方向预测与投资战略规划分析报告2022-2028年版
- 2022-2028中国隐私管理软件市场现状研究分析与发展前景预测报告
- 《电商数据分析与数据化运营》读书笔记
- 云原生数据中台(让数据用起来|数据中台 第3章:数据中台建设与架构)
- 云原生数据中台(让数据用起来|云原生数据中台:架构、方法论与实践)
- 从查询重写角度理解elasticsearch的高亮原理
- 信息论与编码之信源编码详解