编译原理()绪论_.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文档。上传文档
查看更多
编译原理()绪论_.ppt

第一章 绪论 1.1 程序设计语言和编译程序 1.2 编译程序的历史及发展(自学) 1.3 编译过程和编译程序结构 1.4 编译程序的开发 1.5 构造编译程序所应具备的知识内容 1.4.1 开发编译程序的要求 开发人员要熟悉源程序语言 源程序语言的语法和语义有全面深入的理解 确定编译程序的开发方案及方法 开发步骤(熟悉编译原理理论) 软件开发功底,保证编译程序的可读性与扩展性 选择合适的编程语言 一般选择Pascal、C、Java和Ada等高级语言 对目标机器的环境有深入的研究 1.4 编译程序的开发 1.4.2 编译程序的开发技术 自编译 用某种高级语言书写自己的编译程序 交叉编译 针对B机器,在A机上编写一个编译程序,使得B机器上的源代码可以被编译成目标程序 自展 用机器语言或汇编语言实现简单的L0语言,用L0编写自身的扩充语言L1的编译程序,再用L1扩充L2… … 移植 修改基于A机器的编译程序,使得能够在B机器上顺利执行 1.4 编译程序的开发 1.4.3 编译程序的自动生成 有没有一种软件,可以自动生成高效的编译程序? 输入: 源语言(如C语言)的语法:包括关键字、标识符的定义,各种语法结构等 输出:编译程序 当有一段源程序作为该编译程序的输入时,可以得到目标代码 现有的编译程序自动生成系统:JavaCC,Lex,YACC等 我们需要做的是尽可能提供完备、正确的语法描述和机器语言的描述 1.4 编译程序的开发 第一章 绪论 1.1 程序设计语言和编译程序 1.2 编译程序的历史及发展(自学) 1.3 编译过程和编译程序结构 1.4 编译程序的开发 1.5 构造编译程序所应具备的知识内容 要在一台机器上为某种源语言构造一个编译程序,需要掌握下述三方面的内容: 深刻理解源语言的语法结构(自学理解),如: for循环的终值问题 参数传递的顺序问题 对目标机器的硬件和指令系统有深刻的了解 主要针对于要产生目标代码的情况 熟练掌握编译方法 编译程序中各个环节相互联系 表达式 条件表达式 for、switch、while的实现顺序 1.5 构造编译程序所应具备的知识 本章小结 掌握编译程序与高级程序设计语言的关系 掌握编译分为哪几个阶段 了解各个阶段完成的主要功能 * 第 1 讲 西北农林科技大学本科教程 主讲教师:赵建邦 办公室电话电子邮箱:zhaojianbang@nwsuaf.edu.cn QQ群号: 292501555 联系方式 教材和参考书 关于《编译原理》 0.1 本课程的地位 0.2 学习目标 0.3 学习方法 绪论 1.1 程序设计语言和编译程序 1.2 编译程序的历史及发展(自学) 1.3 编译过程和编译程序结构 1.4 编译程序的开发 1.5 构造编译程序所应具备的知识内容 本讲目标 计算机相关专业的专业基础课 软件技术基础 软件方向的必修主干课 本学科研究生入学考试的课程之一 作用: 编译原理是介绍如何将高级程序设计语言变换成计算机硬件所能识别的机器语言,以便计算机能够执行 其形式化系统不仅用于编译技术,还大量应用于人工智能、多媒体技术及数据库等领域(如:翻译风) 0.1 本课程的地位 掌握编译的理论基础和形式化系统 了解编译的全过程及其具体实现方法(5次实验) 最终我们要编写一套程序,这个程序称为编译程序,该程序包括了编译原理的不同环节,可以将符合C语言语法的的一串代码翻译成中间代码(实习一周) 注:中间代码和源代码等效,它使编译程序的结构在逻辑上更为简单明确 0.2 学习目标 赋值语句: a = b*(c+d) 四元式中间代码: (op,arg1,arg2,result) (+,c,d,t1) (*,b,t1,t2) (=,t2,_,a ) 成绩: 期末成绩 课堂作业和考勤(10%) 实验成绩(20%) 期末成绩(70%) 实习成绩(5人左右为一组,成绩比例待定) 实习考勤 实习答辩 实习报告 0.2 学习目标 1、认真听课,理解基本概念、原理和算法 2、章节环环相扣,前面的理论是后面学习的基础,因此做好复习,切忌遗留问题 3、看懂书中的例题,多做课后习题(准备一个作业本) 4、理解理论时,画出相应的细节变化过程,通过画图加深理解 5、理论联系实践 0.3 学习方法 第一章 绪论 1.1 程序设计语言和编译程序 1.2 编译程序的历史及发展(自学) 1.3 编译过程和编译程序结构 1.4 编译程序的开发 1.5 构造编译程序所应具备的知识内容 计算机的指令系统 为了处理和解决实际问题,每一种计算机都具有其特定的功能,而这些功能是通过计算机执行一系列相应的操作来实现的

文档评论(0)

整理王 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档