编译原理chapter1-1.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文档。上传文档
查看更多
编译原理chapter1-1.ppt

编译原理 写在课程之前 木桶原理:一个木桶由许多块木板组成,如果组成木桶的这些木板长短不一,那么这个木桶的最大容量不取决于长的木板,而取决于最短的那块木板。 蝴蝶效应:1963年12月,洛伦兹(Lorenz)在华盛顿的美国科学促进会的一次讲演中提出:一只蝴蝶在巴西扇动翅膀,有可能会在美国的德克萨斯引起一场龙卷风。他的演讲和结论给人们留下了极其深刻的印象。 马太效应:“马太福音”第二十五章由这么几句话:“凡有的,还要加给他叫他多余;没有的,连他所有的也要夺过来。” 。1968年,美国科学史研究者罗伯特·莫顿(Robert K. Merton)提出这个术语用以概括一种社会心理现象:“相对于那些不知名的研究者,声名显赫的科学家通常得到更多的声望即使他们的成就是相似的,同样地,在同一个项目上,声誉通常给予那些已经出名的研究者,例如,一个奖项几乎总是授予最资深的研究者,即使所有工作都是一个研究生完成的。” 学时与参考教材 学时:48+18学时 参考教材: 1、Alfred Aho ect. 《编译原理》,赵建华等译,机械工业出版社,2009.10. 2、Kenneth C. Louden,《编译原理及实践》,冯博琴等译,机械工业出版社,2001.2. 3、金成植,《编译程序构造原理和实现技术》,高等教育出版社,2000.7. 4、陈火旺等,《程序设计语言编译原理》,国防工业出版社,2003.8.印刷 学时与参考教材 5、何炎祥等,《编译原理》,华中理工大学出版社,2000.10. 6、蒋立源,《编译原理》,西北工业大学出版社,2000.7. 7、肖军模,《程序设计语言编译方法》,大连理工大学出版社,2000.8 8、蒋宗礼等,《形式语言与自动机理论》,清华大学出版社,2003.1. 主要内容 编译系统及其设计概述(总体结构、设计方法) 语言与文法(文法、推导、归约、分类、分析树) 词法分析(词法分析、正规式与正规文法、DFA的状态转移图) 语法分析(自顶向下:LL(1)、递归子程序;自底向上:LR) 语义分析(属性文法、各种语句的语法制导翻译) 运行环境(存储分配、过程调用、符号表管理) 代码优化(基本块的优化、循环优化等) 代码生成(目标机器模型、基本块和流图、寄存器分配、基本块的DAG表示、从 DAG生成目标代码) 教学目的——《编译原理》是一门非常好的课程 Alfred V.Aho:编写编译器的原理和技术具有十分普遍的意义,以至于在每个计算机科学家的研究生涯中,本书中的原理和技术都会反复用到 涉及的是一个比较适当的抽象层面上的数据变换(既抽象,又实际) 一些具体的表示和变换算法 “自顶向下的方法”和“自底向上的方法”系统设计方法(思想、方法、实现全方位讨论) 一个相当规模的系统的设计(含总体结构) 计算机专业最为恰当、有效的知识载体之一 教学要求 掌握编译程序总体结构 在系统级上认识算法、系统的设计 具有把握系统的能力 学习有关的原理、实现方法和技术,了解计算学科的基本方法、思想 掌握典型方法。 “在每一个计算机科技工作者的职业生涯中,这些原理和技术都被反复用到。” 兼顾语言的描述方法、设计、应用——形式化 能形式化就能自动化 进一步培养“计算机思维能力” 软件系统的非物理性质 学习成果__以学生为中心 理解和掌握编译过程各个阶段的工作原理 理解标准编译器各个组成部分的任务 熟悉编译过程各阶段所要解决的问题及其采用的方法和技术 应用一些标准的技术解决编译器构造过程中所产生的相关问题 理解编译器在生成代码时如何充分利用特定处理器的特征 第1章 引论 1.1 计算机语言的发展 1.2 翻译系统 1.3 编译系统的功能分析 1.4 编译程序总体结构 1.5 编译程序的生成 1.6 编译技术的应用 1.1 计算机语言的发展 机器语言(Machine Language)与汇编语言(Assemble Language) 0、1代码与助记符:更接近于计算机硬件指令系统的工作 高级语言(High Level Language) 其表示方法更接近于待解问题的表示方法 定义数据、描述运算、控制流程、传输数据 如:C、FORTRAN、PASCAL、C++、JAVA、SQL(数据定义、数据操作) 命令语言(Command Language) 控制系统的工作——以功能封装为特征 如UNIX上的shell 1.2 翻译系统 翻译程序(Translator) 将某一种语言描述的程序(源程序——Source Program)翻译成等价的另一种语言描述的程序(目标程序——Object Program)的程序。 1.2 翻译系统 解释程序(Interpreter) 口译与笔译(单句提交与整篇提交) 1.2 翻译系统 编译程序(Compile

文档评论(0)

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

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

1亿VIP精品文档

相关文档