- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理第0部分
编 译 原 理
2019-5-30
编译原理引论
2
联系方式
E-mail: leiyu@stdu.edu.cn
手机办公室:信息科学与技术学院办公楼201
2019-5-30
编译原理引论
3
课程简介
重要的计算机专业必修基础课程,理论性强、算法多、难度大
硕士研究生和博士研究生入学的考试科目
课程性质:必修课,4学分
学时:52上课+12实验=64学时
参考教材:
编译原理(第2版),清华大学出版社,张素琴等编著,2005年2月出版
2019-5-30
编译原理引论
4
课程要求
课前预习
上课认真听讲,不允许聊天、睡觉、玩游戏、看与本课程无关的书籍等
无故不得旷课,有事要请假,三次以上无故旷课取消期末考试资格
课后认真复习,按时独立地完成作业
实验课之前要认真准备,认真、独立做实验
考试前认真复习
第一章 引 论
2019-5-30
编译原理引论
6
主要内容
什么是编译程序
编译过程概述
编译程序的结构
编译阶段的组合
解释程序
一些软件工具
程序设计语言范型
2019-5-30
编译原理引论
7
编程语言的发展历程
第一代语言:机器语言
特点:面向机器
第二代语言:汇编语言
特点:用针对指令的符号代替二进制码
第三代语言:高级语言
包括面向过程的语言和面向对象的语言。
例:Pascal,C,C++,C#,Java等
第四代语言:面向问题的语言
例:SQL
编程语言的发展体现了编译技术的发展
2019-5-30
编译原理引论
8
1.1 什么是编译程序
语言翻译程序:把一种语言(称作源语言)书写的程序翻译成另一种语言(称作目标语言)的等价的程序
如果源语言是高级语言,目标语言是汇编语言或机器语言等低级语言,则这种翻译程序称作编译程序
编译程序的功能:
高级语言程序
(源程序)
低级语言程序
(目标程序)
编译
程序
2019-5-30
编译原理引论
9
高级语言程序的处理过程
需预处理的源程序
预处理程序
源程序
编译程序
汇编程序
装载/连接编辑程序
目标汇编程序
可再装配的机器代码
绝对机器代码
可再装配目标文件
2019-5-30
编译原理引论
10
编译器和集成开发环境
编译器:即编译程序,把高级语言经分析翻译为低级语言。
集成开发环境:简称IDE(Integrated Develop Environment),是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。
背景:早期程序设计的各个阶段都要用不同的软件来进行处理,如先用字处理软件编辑源程序,再用编译程序进行编译,然后用链接程序进行函数、模块连接, 开发者必须在几种软件间来回切换操作。
人们习惯上经常把IDE称为编译器。
2019-5-30
编译原理引论
11
常见语言及其IDE
语言
IDE
C
TC2.0
C++
C++ Builder, VC++6.0, TC3.0
C#
VS.NET
Pascal
TP
OOPascal
Delphi
VB
VB6.0 (解释器)
Java
Eclipse, JBuilder
2019-5-30
编译原理引论
12
1.2 编译过程概述
从概念上来讲,一个编译程序的整个工作过程是划分成阶段进行的,每个阶段将源程序的一种表示形式转换成另一种表示形式,各个阶段进行的操作在逻辑上是紧密连接在一起的。
编译程序分成词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成六个阶段。另外两个重要的工作:表格管理和出错处理与上述六个阶段都有联系。
2019-5-30
编译原理引论
13
编译过程比喻
编译过程
翻译文章
词法分析
识别一个一个单词
语法分析
分析文章每句话的语法
语义分析
分析文章每句话的含义
中间代码生成
初步给出翻译结果
代码优化
对初步的翻译结果进行修改
目标代码生成
最终翻译结果
2019-5-30
编译原理引论
14
1.2.1 词法分析
词法分析阶段是编译过程的第一个阶段。
这个阶段的任务是从左到右一个字符一个字符地读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词。
单词:逻辑上紧密相连的一组字符,这些字符具有集体意义。
2019-5-30
编译原理引论
15
词法分析举例(源程序)
begin
var sum, first, count: real;
sum := first + count * 10
end.
2019-5-30
编译原理引论
16
词法分析举例(分析结果)
1. 保留字 begin 2. 保留字 var
3. 标识符 sum 4. 逗号 ,
5. 标识符 first 6. 逗号 ,
7. 标识符 count 8. 冒号:
9. 保留字 r
您可能关注的文档
- 经典实用有价值的企业管理培训教案:品牌战略筹备.ppt
- 经典实用有价值的企业管理培训教案:构建客户忠诚度的六大途径.ppt
- 经典实用有价值的企业管理培训教案:国际著名策划公司教程ARS营销战略教程.ppt
- 经典实用有价值的企业管理培训教案:渠道营销与分销策略.ppt
- 经典实用有价值的企业管理培训教案:破解企业可持续发展的密码.ppt
- 经典实用有价值的企业管理培训教案:营销的真正成功在于对市场的战略性思考(方法比知识重要).ppt
- 经典实用有价值的企业管理培训教案:管理会计应用与发展的典型案例研究.ppt
- 经典实用有价值的企业管理培训教案:调动员工工作激情的若干办法与举措.ppt
- 经典实用有价值的企业管理培训教案:赢利模式(李践).ppt
- 经典实用有价值的企业管理培训教案:三星电子员工素质提升训练完整讲义.ppt
文档评论(0)