汇编程序 、编译程序、 解释程序
先说翻译程序。
翻译程序:将某一种语言(源语言)程序转换为与其逻辑
上等价的另一种语言(目标语言)程序。
翻译程序包括这三类程序:
- 汇编程序:源语言为汇编语言,目标语言为机器语言的翻译程序。
- 编译程序:源语言为高级语言,目标语言为汇编语言或机
器语言的翻译程序。 - 解释程序:源语言程序作为输入,但不产生目标程序,而是边解释边执行源程序本身。
编译器
从用户的观点来看,编译器是一个黑盒子。
源程序的翻译和翻译后程序的运行是两个独立的不同阶段。首先是编译阶段,用户输入源程序,经过编译器的处理,生成目标程序。然后是目标程序的运行阶段,根据目标程序的要求进行适当的数据输入,最终得到运行结果。
解释器
解释器不像编译器那样,把源程序的翻译和目标程序的运行分割开来,而是把翻译和运行结合在一起进行,这种方式被称为解释。在计算机应用中,凡是可以采用编译方式的地方,几乎都可以采用解释的方式。
相对于编译器,解释器并不会产生一个目标程序。所以解释器与编译器的主要区别在于:运行目标程序时的控制权在解释器而不在目标程序。
优点:
- 具有较好的动态特性;
- 具有较好的可移植性。
缺点:
- 时间上:降低了程序的运行速度;
- 空间上:占据内存空间不能叠加。