程序设计语言编译原理(第三版)第1章.pptVIP

程序设计语言编译原理(第三版)第1章.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
L A A 条件 L L B 目标 L L B L A A L A B L L B L B B 说明:过程?在A机上运行的产生B代码的L编译程序源程序(L语言编写) 1.5 编译程序的生成 1.5 编译程序的生成 3.自编译过程 通过一系列自展途径而形成编译程序的过程叫做自编译过程。 1.5 编译程序的生成 三.如何学习构造编译程序 要在某一台机器上为某种语言构造一个编译程序,必须掌握以下内容: 源语言:对被编译的源语言,要深刻理解其结构(语法)和 含义(语义)。 目标语言:假定目标语言是机器语言,那么, 就必须搞清硬 件的系统结构和OS的功能。 编译方法:把一种语言程序翻译为另一种语言程序的方法很 多,但必须准确的掌握一、二。 第1章 总结 1.编译程序的概念 2.编译过程(掌握) 3.基本概念:遍,编译前端/后端(掌握) 4.T型图(了解) * 编译原理 于静洋 yjy@henu.edu.cn 程序设计语言 第一章 引论 1.1 什么叫编译程序 1.2 编译过程概述 1.3 编译程序的结构 1.4 编译程序与程序设计环境(略) 1.5 编译程序的生成 1.什么是编译程序? 1.1 什么叫编译程序 翻译程序:一种语言程序----------另一种语言程序 源语言 目标语言 编译程序:高级语言程序----------低级语言程序 汇编程序:汇编语言程序----------机器语言程序 解释程序:源语言程序----------边解释边执行 (1)编译方式:先编译后执行。 (2)解释方式:以源程序作为输入,但不产生目标代码,而 是边解释边执行源程序本身。 2.“高级语言程序”的执行方式 1.1 什么叫编译程序 编译和解释的主要区别: 是否产生目标代码! 3. “编译程序”在计算机系统中的位置较接近于“硬件” 1.1 什么叫编译程序 4.发展 20世纪50年代 第一个编译程序—— FORTRAN编译程序 目前:编译原理与技术得到迅速发展,现已形成一套比较成熟的系统化的理论与方法,并开发出了一些好的编译程序的实现语言、环境与工具。 当时普遍认为设计和实现编译程序是一件十分困难、令人生畏的事情 1.1 什么叫编译程序 1.2 编译过程概述 The elephant ate an banana. 什么是语言? for K : = 1 to 100 do begin M : = I + 10 * K ; N : = J + 10 * K end 一.类比自然语言翻译和编译过程 英→汉 编译的工作过程 1)识别单词……………………………………………词法分析 2)分析句子语法结构…………………………………语法分析 3)根据句子含义初步翻译…………语义分析与中间代码产生 4)修饰译文…………………………………………………优化 5)写出最后译文…………………………………目标代码生成 1.2 编译过程概述 1.词法分析 for K : = 1 to 100 do begin M : = I + 10 * K ; N : = J + 10 * K end 基本字 for 标识符 K 赋值号 := 常数 1 基本字 to 常数 100 基本字 do 基本字 begin ... ... 1.2 编译过程概述 词法分析 —— 规则: 规则描述工具: 任务: 依循词法规则. 正规式和有限自动机(FA). 输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个的单词符号,如基本字、标识符、常数、算符、界符等。 1.2 编译过程概述 2. 语法分析 for K : = 1 to 100 do begin M : = I + 10 * K ; N : = J + 10 * K end 规则: 规则描述工具: 任务: 依循语法规则. 上下文无关文法. 在词法分析的基础上,根据语言的语法规则,对单词符号串进行语法分析,识别出各类语法单位,最终判断输入串是否构成语法上正确的“程序”。 1.2 编译过程概述 3.语义分析和中间代码产生 规则: 规则描述工具: 任务: 语义规则 属性文法 两部分工作: 1.对每种语法范畴进行静态语义检查; 2.若语义正确,则进行中间代码翻译. 对语法分析器识别出的各类语法单位,分析其含义并进行初步翻译(产生中间代码)。 中间代码:一种独立于具体硬

文档评论(0)

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

分享好文档!

1亿VIP精品文档

相关文档