- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理第一讲概要
主要内容 第一章 概述 1.1什麽是编译程序 1.2编译过程和编译程序的结构 1.3编译程序和解释程序 参考书 1.1什么是编译程序(compiler) 1.定义: 翻译程序: 编译程序 汇编程序 分类 软件 系统软件 编译程序和外文翻译的类比 外文翻译 编译程序 查单词和词组 词法分析 句子分析 语法分析 语义分析 语义分析 修辞 优化 生成作文 目标代码 1.2 编译过程和编译程序的结构 1.编译逻辑过程 词法分析 语法分析 语义分析 中间代码生成 代码优化 目标代码生成 源程序 PROGRAM m; VAR a,b:real; BEGIN read(a); b:=2*5+a; write(b) END. 经词法分析源程序被加工成单词流 保留字,PROGRAM 标识符,m 分隔符, ; 保留字,VAR 标识符,a 标识符,b 分隔符, : 标识符, real 分隔符, ; 保留字, BEGIN …... 标识符,b 算符 , := 标识符,a 算符,+ 常数 ,2 算符, * 常数 ,5 …… 保留字, END 分隔符, . 生成中间代码 temp1:=2*5; temp2:=a+ temp1; b :=temp3; 符号表 错误的诊查处理 编译程序在各个阶段应诊断和报告源程序中的错误,包括词法错误,语法错误,语义错误。 编译程序应报告出错地点,并给出简明准确的提示信息。 3.编译程序(器)的组织 前端和后端 源程序 中间代码 目标代码 仅依赖源程序 仅依赖目标计算机 遍(PASS): 对输入文件(源程序或其等价的中间形式)从头到尾扫视,完成预定的处理。 1.3高级语言解释系统(interpreter) 功能 让计算机执行高级语言(basic,lisp,prolog) 源 程 序 初始数据 解释系统 直接对源程序中的语句进行分析,执行其隐含的操作。 如:… … b := 2 ; a := b+2 ; 编译程序 write a ; … … 解释程序直接将4的值输出(显示) 与编译程序的不同 1)不生成目标代 2)能支持交互环境 (同增量式编译系统) 3)结构简单 4)交互性好 第一章 小结 内容 1 什么是编译程序 2 编译过程和编译程序的结构 3 解释程序和编译程序 本章没有难以理解的内容,重点对编译程序的功能和结构做一综述,要说难点的话可能是:了解编译程序各个成分在编译阶段的逻辑关系以及他们怎样作为一个整体完成编译任务的。 参考书 [1] 陈意云,《编译原理和技术》(第2版),合肥:中国科学技术大学出版社, [2] 蒋立源、康慕宁等,《编译原理》(第2版),西安:西北工业大学出版社, [3] A. Aho, R. Sethi and J. Ullman, Compilers Principles, Techniques and Tools, Addison-Wesley, [4] 陈火旺、钱家骅、孙永强,《程序设计语言编译原理》,北京:国防工业出版社, [5] 沈志宇、胡子昂等,《并行编译方法》,北京:国防工业出版社, * Compiler Construction Principles * Formal Languages and Automata 名称 编译原理 类别 专业基础课 时间 周一和周四 教室 丙2-405 人数 74 时数 80 课 程
文档评论(0)