编译型语言与解释型语言

发布时间:2020/11/24 作者:天马行空 阅读(1196)

概念
计算机不能直接的理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言的编写的程序。翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。

解释性语言
解释性语言是指它常用的执行机制是使用一个“解释器”来执行,解释器对于程序是一句一句“翻译”成机器语言,然后一句一句执行,例如shell脚本语言。相当于是本英文书籍,每读一段就要去翻译一段。

解释性语言特点:
1、提供了极佳的调试支持;
2、解释器比编译器容易实现;
3、平台独立性,可以跨平台;
4、高度的安全性——这是互联网应用迫切需要的;
5、代码的大小要小很多;
6、占用更多的内存和CPU资源;
7、它们比编译型程序慢很多。

编译型语言
编译型语言是指它常用的执行机制是使用一个“编译器”来编译成机器语言,然后你就可以直接运行(执行)这个编译成的“可执行文件”。相当于是把一整本英文书籍一次性就全部翻译成中文。

编译型语言特点:
1、执行速度快;
2、消耗内存更少;
3、代码大许多;
4、调试程序不方便;
5、跨平台性差;
6、安全性低,不适合web应用。一个编译型的程序可以访问内存的任何区域,并且可以对你的PC做它想做的任何事情(大部分病毒是使用编译型语言编写的)。

不管是解释性语言还是编译型都可编译或解释,前提是有这样的编译器或解释器(比如你自己写一个),找不到这样的编译器你当然不能编译,对于语言本身来说,各种编程语言本质没什么不同。所谓的“解释性”和“编译”指的是执行机制上的不同。

关键字概念