简记:
解释性语言:运行时将程序翻译成机器语言,每执行一次就翻译一次。
编译型语言:在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言的文件,比方exe.文件,以后执行这个程序的时候,就不用再进行翻译,直接使用编译的结果就可以了。因为其编译仅做一次,所以编译型语言程序执行效率高(不绝对)。
例如一个程序hello.c的编译过程:
1)hello.c源文本被C语言预处理器(cpp)处理成:hello.i;
2)被修改的源程序hello.i被编译器(ccl)处理成hello.s;
3)汇编程序hello.s被汇编器(as)处理成hello.o;
4)可重定位目标程序(二进制)hello.o + printf.o一起在链接器(ld)被处理成hello(可执行目标程序<二进制>)