第一章 编译原理绪论(4)——编译程序的组织
2014-05-07 21:00
309 查看
图1(文章《编译原理绪论——编译过程的逻辑结构》中的图1)所示的编译程序的逻辑结构,是指它们之间的逻辑关系,而不一定是执行时间上的先后顺序。事实上,可按不同的执行流程来组织上述各部分的工作,这在很大程度上依赖于编译过程中对源程序扫描的遍数,以及如何划分各遍扫描所进行的工作。此处所说的“遍”,是指对源程序或其内部表示从头到尾扫视一次,并进行有关的加工处理工作。
从对源程序的词法分析开始到中间代码生成,编译程序所完成的处理工作只依赖于源语言,而与运行目标程序的计算机(或目标语言)无关,通常将上述各个环节统称为编译程序的前端(Front
End)。属于综合部分的代码优化和目标代码生成,一般只依赖于目标语言,通常将它称为编译程序的后端(Back End)。
目前广泛流行的J A V A语言就是采用这种思想来实现的(解释执行),即对于不同的计算机,解释器的前端都相同(因为它与运行目标程序的计算机(或目标语言)无关),所产生的也都是同一种所谓字节码(Byte
Code)形式的中间代码,若在不同的计算机上配置了能解释执行这种中间代码的后端(通常称为JA
V A虚拟机),便能在这些计算机上解释执行JAVA程序,即实现了 JA V A语言的跨平台特性。(所以只需要安装其解释器的后端就可以实现其跨平台的特性)
从对源程序的词法分析开始到中间代码生成,编译程序所完成的处理工作只依赖于源语言,而与运行目标程序的计算机(或目标语言)无关,通常将上述各个环节统称为编译程序的前端(Front
End)。属于综合部分的代码优化和目标代码生成,一般只依赖于目标语言,通常将它称为编译程序的后端(Back End)。
目前广泛流行的J A V A语言就是采用这种思想来实现的(解释执行),即对于不同的计算机,解释器的前端都相同(因为它与运行目标程序的计算机(或目标语言)无关),所产生的也都是同一种所谓字节码(Byte
Code)形式的中间代码,若在不同的计算机上配置了能解释执行这种中间代码的后端(通常称为JA
V A虚拟机),便能在这些计算机上解释执行JAVA程序,即实现了 JA V A语言的跨平台特性。(所以只需要安装其解释器的后端就可以实现其跨平台的特性)
相关文章推荐
- 第一章 编译原理绪论(2)——编译程序的八个部分
- 第一章 编译原理绪论(3)——编译程序的逻辑结构
- 第一章 编译原理绪论(1)——编译原理基本概念
- 编译原理-第一章绪论前两节
- 编译原理学习笔记——第一章:绪论
- 编译原理学习笔记--第一章 绪论
- 一个简单的编译原理词法语法语义分析程序
- 第一章,程序设计原理总结
- 编译原理第一章复习记录
- 关于Basic程序解释器及编译原理的简单化(1)---Basic器的语法分析及主要代码
- 编译原理学习笔记10——(野火烧不尽再递归下降—— E → E+T | T从上向下程序)——2014_1_26
- 编译原理 词法分析程序
- 【学习笔记】编译原理:编译程序概述
- 【编译原理】程序的编译链接执行过程
- 程序设计基础(C&C++) 戴波、张东祥 第一章 绪论 编程作业
- 编译原理学习周入门教程--(8)编译程序第一个工作阶段-词法分析(有穷自动机)
- Android程序编译原理之浅析
- 编译原理第一章简介
- 编译原理学习笔记:(第一章:引论——1.1节)
- 编译原理上机程序 之 词法分析器