程序员术语:什么是高级语言/低级语言?解释语言/编译语言?

作为一名合格的程序员,你必须知道一些计算机软件编程方面的术语。这次给大家解释一下下面两对常见的术语:高级语言/低级语言、解释语言/编译语言。

什么是高级语言/低级语言?

1、高级语言

我们现在大多数人使用的语言,如C、C++、Python、Java、Matlab、LabVIEW等等,都属于高级语言,相对于低级语言,它更接近于我们平时正常的人思维,其最大的特点是编写容易,代码可读性好。实现同样的功能,使用高级语言耗时更少,程序代码量更短,更容易阅读。其次,高级语言是可移植的,也就是说,仅需稍作修改甚至不用修改,就可将一段代码运行在不同类型的计算机上。

其缺点也很明显,使用高级语言编写的程序运行时,需要先将其翻译成低纸语言计算机才能运行它,在翻译过程中可能程会产生一些多余的部分,运行效率低些。另外,对硬件的可控性相对于低级语言弱些,目标代码量较大。

2、低级语言

泛指机器语言和汇编语言,其中,机器语言是计算机最原始的语言,由0和1的代码构成,计算机在工作的时候只认识机器语言,即0和1的代码;汇编语言,它用人类容易记忆的语言和符号来表示一组0和1的代码,如AND表示加法助记符。

相对于高级语言,其优点是执行速度快,但代码编写难度较大,可读性较差。另外,低级语言编写的程序只能在一种计算机上运行,想要运行在不同的机器上,必须重写。低级语言是早期的一种计算机编程语言,现在只在很少的特殊场景中使用了。

什么是编译语言/解释语言?

刚才说了,高级语言程序想要在计算机上执行,必需先将其翻译成计算机能识别的低级语言才能执行。对于不同的语言编写的代码,可以采用两种不同的翻译方式,一种是编译翻译,一种是解释翻译,分别对应着编译型语言和解释型语言。

1、编译型语言

典型的如C、C++、Pascal等语言,都属于编译型语言。它是编译的时候直接编译成机器可以执行或调用的程序,如exe、dll或ocx等类型。如将C语言可直接编译成exe程序,运行时直接运行exe程序就可以了,无需重新编译,所以程序执行效率较高。其执行过程如下所示:

相对于解释型语言,其优点是运行速度快,代码效率高,编译后程序不可以修改,且看不到源码,保密性较好。

缺点是代码需要经过编译方可运行,可移植性差,只能在兼容的操作系统上运行。

由于其执行速度较快,同等条件下对系统的要求较低,因此常用于开发操作系统、大型应用程序、图像处理、数据库开发等场合。

2、解释型语言

典型的如Java、Python、Matlab等语言,都属于解释型语言。这类程序不需要编译,运行时使用一个专门的解释器去翻译,每一条语句都是执行的时候才翻译,所以这类程序每执行一次就要翻译一次,运行效率较称低。其执行过程如下所示:

相对于编译性语言,其优点是可移植性好,只要有解释器环境,程序就可以在不同的操作系统上运行。

缺点是代码需要有专门的解释器,在程序运行时,除要给用户程序本身分配内存空间外,解释器也占用系统资源,所以其运行速度较慢。另外,也很难达到像C、C++那样操作系统底层操作的目的。

解释型语言常用于,一是对运行速度要求不高(如一些网页脚本、服务器脚本、接口辅助开发等)的场合,二是对跨平台(操作系统的兼容性)有要求的场合。

总结

到这儿就解释完了这两对计算机编程方面的术语,不知你明白了么?欢迎大家留言讨论。

欢迎加关注,共同交流。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181024A1DYAE00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券