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

编译原理第1章引论详解.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理;课程评分方法 (Grading Policies);第1章 引 言 ;教学目的;1.1什么叫编译程序;编译程序的分类(用途和侧重);编译程序的分类(用途和侧重);编译程序的分类(用途和侧重);编译程序的分类(用途和侧重);1. 2编译过程概述(编译器的组成);又如一个C源程序片断: int a; a = a + 2; 词法分析后返回: 单词类型 单词值 保留字 int 标识符(变量名) a 界符 ; 标识符(变量名) a 算符(赋值) = 标识符(变量名) a 算符(加) + 整数 2 界符 ; ;词法分析 ;例:position := initial + rate * 60 ; 规则 赋值语句::=标识符“:=”表达式 表达式::=表达式“+”表达式 表达式::=表达式“*”表达式 表达式::=“(”表达式“)” 表达式::=标识符 表达式::=整数 表达式::=实数 ;赋值语句;id1:=id2+id3*N ;词法分析 ;词法分析 ;例1:将id1:= id2 + id3 * 60表示成四元式 (1) (inttoreal, 60 - t1 ) (2) (* , id3 t1 t2 ) (3) (+ , id2 t2 t3 ) (4) (:= , t3 - id1 ) ;词法分析 ; id1:= id2 + id3 * 60 (1) (inttoreal 60 - t1 ) (2) ( * id3 t1 t2 ) (3) ( + id2 t2 t3 ) (4) ( := t3 - id1 ) 变换 ? (1) ( * id3 60.0 t1 ) ( 2)( + id2 t1 id1 );t1 = b* c t1 = b* c t2 = t1+ 0 t2 = t1 + t1 t3 = b* c a = t2 t4 = t2 + t3 a = t4 ;词法分析器 ;1.3 编译程序的结构;1.3.2 表格与表格管理; ; ;一遍扫描即可完成整个编译工作的称为一遍扫描编译程序; ;1.3.5 编译的前端与后端; 1.4 编译程序的生成; 例:如果A机器上已有一个用A机器代码实现的某高级语言L1的编译程序,则我们可以用L1语言编写另一种高级L2的编译程序,把写好的L2编译程序经过L1编译程序编译后就可得到A机器代码实现的L2编译程序如图所:; ;作??: 1.计算机执行用高级语言编写的程序的途径有哪些?它们之间主要区别是什么? 2.名字与标识符的区别是什么? 3.许多编译程序在真正编译之前都要进行预处理操作,请问预处理的目的是什么?预处理主要做哪些工作?

文档评论(0)

过各自的生活 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档