【软考知识点】编译器和解释器
一、编译器
编译器就是将“一种高级语言”翻译为“另一种低级语言”的程序。编译程序的工作过程可以分为六个阶段:
编译就是将源程序整个编译成可执行的目标代码,执行时不需要编译器,直接在支持目标代码的平台上运行。并可以进行优化,翻译与执行是分开的。下图是详细的工作过程图:
二、解释器
解释器是一种能够把高级编程语言逐行转译,它不会一次性把整个程序转译过来。所以执行过程较慢。
解释器对源程序的翻译与执行一次性完成,不生成可存储的目标代码。
三、二者比较
1、编译器需要将源程序译成可执行的目标代码,并进行优化。
2、编译器效率更高。因为是整个源程序直接翻译完成。
3、最大区别:解释器,程序运行时的控制权在解释器而不在用户程序;
编译器:运行时的控制权在用户程序。