- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理
武汉大学计算机学院
编译原理课程组
与课程有关的问题
‧时间安排: 讲课:50学时 实习:18学时
‧参考书 :
《程序设计语言编译原理》,陈火旺等,第三版,国防工业出版社
《计算机编译原理》 ,第二版,张幸儿,科学出版社
《编译程序原理与技术》,李赣生、王华民,清华大学出版社
‧作业:每次视所讲内容布置1-2道习题
‧成绩 :以考试为主,参考平时成绩(作业、实习等)
与课程有关的问题
‧本课程的性质、目的和任务 :
本课程是计算机类专业的专业课,目的是使学生了解并掌握编
译程序的基本理论和方法,具有分析和实现编译程序的初步能力。
‧本课程的基本要求 :
通过对本课程的学习,对形式语言有初步了解,并能对编译程
序的整个结构有较清楚地了解,熟悉和掌握几种主要编译方法。
‧课程内容的重点、深度与广度 :
文法和形式语言、词法分析和有穷自动机、语法分析、语义分
析、目标代码的生成,此外还要求掌握和了解符号表的构造、存储
分配与管理、代码优化和错误校正。
学习中应注意的问题
‧一定要预习
‧上课专心致志
‧重视习题
‧确立好学习的角度
‧重视实习
急功近利是学习的一大敌人!
课程内容
‧第1章 :编译程序概述
‧第2章 :文法和语言的形式定义
‧第3章 :有穷自动机
‧第4章 :词法分析
‧第5— 7章 :语法分析
‧第8章 :语义分析和中间代码生成
‧第9章 :运行阶段的存储组织与分配
‧第10章 :符号表
‧第11章 :中间代码优化
‧第12章 :目标代码生成
本节内容简介
· 程序的翻译
· 编译程序的工作过程
· 编译程序的结构
· 编译程序的组织方式
· 编译程序的构造
1.1 程序的翻译
1.1.1 程序设计语言
· 机器语言 001110010010
· 汇编语言 ADD R1 2
· 高级语言 begin x:=9+2 end
问题:
计算机只能识别二进制数0、1表示的指令和数构成的本计算
机系统的机器语言。如何让计算机执行高级语言程序呢?
1.1 程序的翻译
1.1.2 翻译程序
· 所谓翻译程序是指这样一种程序,它能将用甲语言(源语
言)编写的程序翻译成与之等价的用乙语言(目标语言)书写
的程序。
· 程序的翻译通常有两种方式:一是“编译”方式,二是“解释”方
式。
1.1 程序的翻译
1.1.3 编译方式
编译方式是一种分阶段进行的方式。
· 翻译阶段
高级语言或汇 翻译程序 机器语言的目
编语言源程序 标程序
· 运行阶段
目标程序
输入数据 运行结果
运行子程序
1.1 程序的翻译——编译方式
⒈ 编译方式下的翻译程序
· 编译程序
高级语言 编译程序 汇编语言或机器语言
源程序 目标程序
· 汇编程序
汇编程序
汇编语言
文档评论(0)