1、编译、链接、载入
编译:将高级语言翻译成二进制代码
链接:由链接程序将编译后形成的目标模块以及所需的库函数链接在一起,形成完成的载入模型。链接主要解决模块间的相互引用问题,分为地址和空间分配,符号解析和重定位几个步骤。
载入:由载入程序将载入模块载入内存
2、编译型语言与解释型语言
编译型语言:编译程序将源程序翻译成目标程序后保存在另一个文件中,该目标程序可脱离编译程序直接在计算机上多次运行,使用方便,效率较高,但应用程序一旦需要修改,必须先修改源代码,再重新编译生成目标文件才行,修改不方便,如:C、C++、Fortran、Visual Foxpro、Pascal、Delphi、Ada等
解释型语言:翻译器不产生目标机器代码,而是产生易于执行的中间代码,中间代码的解释是由软件支持的,不能直接使用硬件,会导致效率较低,优点是:当语句出现语法错误时,可以立即引起程序员的注意。一般的,动态语言都是解释型语言,如:Tcl,perl,Ruby,VBScript,JavaScript等
注:java是一类特殊的编程语言,java程序也需要编译,但是却没有直接编译为机器语言,而是编译成字节码,然后在java虚拟机上以解释方式执行字节码。