编译原理chpt1 概述.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理chpt1 概述

《编译原理》课程信息 编译程序的用途和地位: 计算机只直接认识0、1序列 怎么办?配翻译! 回顾: 程序上机过程 为什么学习编译? 编译是与数据结构、OS等同样重要的基础性课程 专业基础能力的四个方面:计算思维、算法设计、程序实现和系统开发在编译中都有较为充分的体现 编译程序的构造原理和技术可以说是计算机科学技术中理论和实践相结合的最好典范 学习编译才能透彻理解、熟练运用程序设计语言 日后科研工作中将长期受益,是优秀专业人员必修课 图灵奖获得者Perlis教授的名言“To understand a program you must become both the machine and the program.”。编译有助于你达成这个愿望 编写编译器的原理和技术具有十分普遍的意义,以至于在每一个计算机科学家的研究生涯中,它的原理和技术都回反复用到 。 计算思维是什么 计算思维(Computational Thinking) 计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为,它包括了一系列广泛的计算机科学的思维工具 计算思维和阅读、写作和算术一样,是21世纪每个人的基本技能,而不仅仅属于计算机科学家 计算思维在生物、物理、化学、经济学、统计学等其他学科中的影响已经显现 计算思维包括一系列广泛的计算机科学的思维方法 递归 抽象和问题分解 保护、冗余、容错、纠错和恢复 利用启发式推理来寻求解答 在不确定情况下的规划、学习和调度 课程特点: 1 理论和实践并重的课程 2 记分方法: 上机(50)+平时(20)+期末笔试(30) 教材及主要参考书 教材:《编译原理》(第2版),张素琴、吕映芝等,清华大学出版社 2004 参考书:《Compilers: Principles, Technigues, and Tools》(Second Edition) Alfred V.Aho, Monica S.Lam, Ravi Sethi, Jeffrey D.Ullman, Addison-Wesley, 2007 参考书:《编译原理》,陈意云、张昱,高等教育出版社 2003 教学内容简介 1 编译程序概述 词法分析、语法分析、语义分析、中间代码生成、目标代码生成、代码优化、符号表管理和错误处理等成分。 编译成分的主要功能、编译阶段的逻辑关系? 2 PL/0 编译程序剖析 通过剖析一个用C语言实现的PL/0语言的编译程序以理解各编译成分的功能及手工实现方法。 3 高级语言的认识 理解和定义程序设计语言是学习和构造编译程序的前提。 每个程序设计语言都包含语法和语义两个基本方面。 上下文无关文法给出程序设计语言的精确的,易于理解的语法说明。流行的描述语义规则的方法—属性文法。 4 词法分析程序的自动构造 词法分析程序的主要任务是扫描源程序,按构词规则识别单词,并报告发现的词法错误。 正则表达式和有穷状态自动机分别作为单词的描述工具和识别机制。 5 语法分析程序的构造 自顶向下的语法分析。相当于从根开始,按前序生成结点,为输入串构造分析树的过程。讨论预测分析法,介绍对于LL(1)文法, 如何自动构造预测分析程序 自底向上语法分析法:对输入符号串自左向右扫描,并将输入符依次移入栈中,边移进边分析,一旦栈顶形成可归约串,就将其替换为相应非终结符,重复此过程,直到栈中只剩文法的开始符时,成功结束。 介绍LR分析法,LR分析表的构造原理。 6 语义分析和中间代码生成 引入属性文法和语法制导翻译的概念,介绍中间代码,针对一些语法成分讨论相应语义处理工作的描述。 7 符号表 介绍符号表的一般组织和使用方法,讨论分程序结构语言的名字作用域分析及符号表设计方案。 8 运行时的存储组织和管理 生成目标程序之前,编译程序必须对目标程序运行时的数据空间进行组织和安排。主要讨论栈式存储分配。 9 代码优化和目标代码生成 介绍优化技术,优化分类以及优化工作的基础-控制流和数据流分析问题。 将讨论目标代码生成程序设计的一般问题,包括指令选择,寄存器分配和计算顺序选择。 目录 第一章 引论 第二章 PL/0编译系统 第三章 词法分析程序及其自动构造 第四章 文法和语言 第五章 预测分析、算符优先分析 第六章 LR分析程序及其自动构造 第七章 语法制导翻译和中间代码 第八章 代码优化 第九章 其它编译技术 第1章 概述 1.1 编译程序及其结构 1.2 程序设计语言的实现途径 1.3 编译程序的实现方式 1.4 编译技术的应用--处理源程序的软件工具 1.5 编译技术的发展 1.1 编译程序及其结构(compiler) 一、编译程序的作用 计算机只直接认识0、1序列 它如何处

文档评论(0)

119220 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档