- 16
- 0
- 约4.42万字
- 约 82页
- 2018-01-15 发布于浙江
- 举报
软件工程专业本科课程
编 译 原 理
Compilers Principles
长安大学信息工程学院软件工程系
主讲:李 鹏
第三章 词法分析
• 词法分析器的作用;
• 介绍正则表达式、状态转换图和有限自动机
概念;
• 词法分析器的自动生成。
2
形式语言
• Chomsky于1956年提出了一种用来描述语言的数学系
统。人们把用一组数学符号和规则来描述语言的方式
称为形式描述,而把所用的数学符号和规则称为形式
语言。
• 形式语言,只是从语法上研究语言。它是抽象的数学
系统,用于模拟程序设计语言的语法。
• 形式语言理论是编译理论的重要基础,它主要研究组
成符号语言的符号串的集合及它们的表示法、结构与
特性。
3
3.1 词法分析器的作用
词法分析器的主要任务是读入输入字符,将它们组成词
素,生成并输出词法单元序列,提供给语法分析使用。
辅助任务:
• 过滤注释和空白;
• 将各阶段发现的错误与源程序联系起来。
词法单元
源程序 词法分析器 语法分析器
取下一个词素
符号表
3.1 词法分析器的作用 4
词法分析器可以分成两个级联的处理阶段:
1. 扫描阶段;
2. 词法分析阶段。
3.1 词法分析器的作用 5
分析部分划分为词法分析和语法分析阶段的原因:
• 简化设计;
• 编译器的效率会改进;
• 编译器的可移植性加强。
3.1 词法分析器的作用 6
词法单元
模式(pattern )的非形式描述 词素实例
(token )
if 字符i,f if
else 字符e,l,s,e else
comparison 或=或==或=或或!= =, !=
id 由字母开头的字母数字串 pi, score, D2
number 任何数值常数 3.14, 10, 2.08E12
在两个” 之间,除” 以外的任
literal 意字符串 “core dumped”
3.1 词法分析器的作用 7
• 识别词法单元时的一些问题
忽略空格带来的困难
您可能关注的文档
- 医学细胞生物学(中山大学)14-细胞外基质.ppt
- 医学细胞生物学(中山大学)第六章 线粒体与细胞的能量转换.doc
- 医学细胞生物学(中山大学)第七章 第七章细胞骨架与细胞的运动.doc
- 医学细胞生物学(中山大学)第四章 第一节细胞膜的化学组成与生物学特性.doc
- 医学细胞生物学(中山大学)第二章 细胞的概念和分子基础(附习题).docx
- 医学细胞生物学(中山大学)第五章 细胞的内膜系统与囊泡运输.docx
- 医学细胞生物学(中山大学)12 信号转导-五年制.pptx
- 医学细胞生物学(中山大学)柯琼 核糖体-20141027.pptx
- 医学细胞生物学(中山大学)柯琼 第6章细胞骨架与细胞运动-20150408.pptx
- 医学英语教学(盛淑芳)Introduction.ppt
原创力文档

文档评论(0)