预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共38页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

编译原理第一章引论1.什么是编译程序?(1)编译方式:先编译后执行。编译和解释的主要区别:3.4.发展编译技术是计算机科学中发展最迅速、最成熟的一个重要分支,集中体现了计算机科学发展的重要成果与精华。 通过本课程的学习,一方面要理解、掌握编译系统的结构、工作流程以及编译程序各组成部分的设计原理和实现技术,获得分析、设计、实现和维护编译系统的初步能力;另一面,通过学习编译的理论和方法,提高对程序设计语言、操作系统、计算机原理和体系结构等课程知识的综合理解。1.2编译过程概述英→汉编译的工作过程 1)识别单词……………………………………………词法分析 2)分析句子语法结构…………………………………语法分析 3)根据句子含义初步翻译…………语义分析与中间代码产生 4)修饰译文…………………………………………………优化 5)写出最后译文…………………………………目标代码生成1.词法分析词法分析——2.语法分析3.语义分析和中间代码产生forK:=1to100do begin M:=I+10*K; N:=J+10*K end;K:=1 L1:if100<KgotoL2 T1:=10*K M:=I+T1 T2:=10*K N:=J+T2 K:=K+1 gotoL1 L2: 任务:对中间代码进行加工变换,以期在最后阶段 能产生出更为高效(省时间和空间)的目标 代码。序号任务:把中间代码变换成特定机器上的低级语言代码, 实现最后的翻译。1.3编译程序的结构1.表格管理编译各阶段都要涉及到构造、查找或 更新有关表格。2.出错处理每一阶段都可能检测出错误,绝大多 数错误可在前三阶段检测出来.二.遍3.注意: 既可以将几个不同阶段合为一遍,也可以把一个阶段的工作分为若干遍 例如: 词法分析+语法分析 一遍 语法分析+语义分析与中间代码产生一遍 优化若干遍当一遍中包含若干阶段时,各阶段的工作是穿插进行的。三.编译前端与后端1.5编译程序的生成1.5编译程序的生成五.编译程序生成1.5编译程序的生成ST I高级语言书写 利用已有的某种语言的编译程序实现另一语言的编译程序。移植方法 把一种机器上的编译程序移植到另一种机器上。L1+L2+...+Ln 编译程序自动产生 编译程序-编译程序,编译程序书写系统1.5编译程序的生成关于学习编译原理第1章总结