网站大量收购闲置独家精品文档,联系QQ:2885784924

[编译原理1-4.ppt

  1. 1、本文档共81页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[编译原理1-4

编译原理 信息科技学院 周迎春 Email:yingchunemail@163.com QQ:119661688 Tel :3194323 1、本课程的地位: 计算机专业的专业基础课 是软件技术的基础 必修的主干课 研究生入学考试课 作用 编译原理是介绍如何将高级语言变换成计算机硬件所能识别的机器语言以便计算机能处理 它的理论基础坚实,其形式化系统不仅应用于编译技术,还大量应用于人工智能,多媒体技术、数据库等; 学习任务: 1、掌握编译的理论基础和形式化系统 2、了解编译的全过程及其具体实现 学习方法 认真听讲、认真理解书中的基本概念、基本原理与基本算法 弄懂书中的例题与习题 在看书时或理解例题时,一定要画出相应的细节过程,通过画图来加深理解 再理解的基础上记忆 理论结合实践 成绩考核 平时 30%(点名10%,作业%20) 期末考试 70% 第一章 引论 1.1、程序设计语言与编译 1、程序设计语言 高级语言 汇编语言 机器语言 在计算机上如何执行一个高级语言?? 把高级语言翻译成机器语言 运行所得的机器语言程序,求得计算结果 2、程序设计语言的转换 翻译:是指能把某种语言的源程序,在不改变语义的条件下转换成另外一种语言程序------目标语言程序;两种翻译方法 编译:指由高级语言转换成低级语言 解释:接受某一高级语言的输入,进行解释并控制计算机执行,马上得到这一句的执行结果,然后再接受下一句。 3、编译的转换过程 两个阶段转换:编译------运行 三个阶段的转换:编译→汇编→运行 区别是产生的目标代码不一样,三个阶段产生的是汇编的代码 解释: 以源程序作为输入,不产生目标代码,一边解释一边执行 优点:直观易懂,结构简单,易于实现人机对话 缺点:效率低 1.2编译程序的概述 1、编译程序的工作 自然语言的翻译 识别单词 分析句子的语法结构 根据句子的含义进行初步翻译 对译文进行修饰 写出最后的译文 程序语言的翻译 词法分析 语法分析 语义分析和中间代码的生成 优化 目标代码的生成 中间代码的作用:?? 词法分析 任务:输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个单词 单词:高级语言中有实际意义的最小语法单位,它由字符构成。 例:有一个c语言程序,对它进行编译 void _compute( ) { int y,c,d; float x,a,b; x=a+b*10; y=c+)d*(x+b; } 基本字: 标识符: 整常数: 运算符: 界限符: 词法分析依照词法规则识别出正确的单词,转换成统一的规格,备用 转换: 对基本字、运算符、界限符的转换 标识符的转换 常数的转换 转换完成后的格式(类号,内码) 描述词法分析规则的有效工具:“正规式”和“有限自动机” 语法分析 任务:在词法分析的基础上,根据语言的语法规则,把单词符号组成各类的语法单位:短语、子句、语句、过程、程序等 语法规则:又称文法,规定单词如何构成短语、语句、过程、程序 语法规则的表示:BNF(巴斯克范式),A::=B|C,::=赋值为 例:x=a+b*50 赋值语句的语法规则 A::=V=E E::=T|E+T T::=F|T*F F::=V|(E)|C V::=标识符 C::=常数 语法分析的方法 推导(derive)和规约(reduce) 推导:最左推导、最右推导 推导的逆过程称为规约;最左规约与最右规约 最左推导 最右规约 最右推导 最左规约 机器用语法树来做推导分析 c语言语句 y=c+)*(x+b的分析过程 语法分析过程也可以用一棵倒置的树来表示,这棵树也叫做语法树 eg:x=a+b*50的语法树 再有y=c+)*(x+b 语义分析与中间代码生成 任务:对语法分析识别出的各类语法范畴,分析其含义,进行初步的翻译产生介于源代码和目标代码之间的一种代码 分两个阶段工作: 对每种语法范畴进行静态语义检查 若语义正

文档评论(0)

wu12youli + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档