编译型和解释型

骑猪看日落 2024-03-22 08:59 94阅读 0赞

#简介,计算机不能直接理解高级语言,只能 理解和运行机器语言(机器码,即二进制码)。必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。翻译的方式有两种,一个是编译,一个是解释。编译 和解释都有翻译的意思,但是他们两个是不同的,最主要的区别就是翻译的时机不同。

#编译型:用编译型语言写的程序执行之前,需要一个专门的编译过程,针对特定的平台,使用专门的编译器,把高级语言翻译成机器语言,以后直接运行而不需要再编译了

特点:一次性的编译成平台相关的机器语言文件,运行时脱离开发环境,运行效率高;与特定平台相关,一般无法移植到其他平台。源代码中一处有错误,就不允许编译,编译过程中出现一处错误,就停止编译。

常用:电脑操作系统,C,C++,iOS

#解释型:解释型语言在运行的时候才翻译成机器语言,每个语句都是执行时才翻译,每执行一次就要翻译一次

特点:每次运行都需要将源代码解释成机器码并执行,不断的对源代码解释,执行,解释,执行。由于解释型程序是将翻译过程放到执行过程中,这就导致了解释型程序注定了比编译型程序慢了一大截,而且每次运行程序,都要对源代码进行重新解释,而不是执行最终产品所以效率较低;但只要平台提供相应的解释器,就可以运行源代码,所以可以方便源程序移植。源代码有错误照样能解释执行,遇到错了在停下来。

用于:JavaScript、Python,Android

#随着技术和硬件的发展,这两种之间的差距也已经越来越小

Java程序运行机制

Java是一种兼具编译和解释特性的语言,.java文件会先被编译成与平台无关的.class文件(字节码文件),这个过程是编译。但是.class文件还是无法被计算机直接识别,仍然需要JVM进行翻译成机器语言,这个过程则是解释。

所以可是说java即是编译型的,也是解释型,但是假如非要归类的话,从概念上的定义,恐怕java应该归到解释型的语言中

发表评论

表情:
评论列表 (有 0 条评论,94人围观)

还没有评论,来说两句吧...

相关阅读

    相关 编译解释

    \简介,计算机不能直接理解高级语言,只能 理解和运行机器语言(机器码,即二进制码)。必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。翻译的方式有两种,一个是

    相关 编译语言解释语言

    计算机是不能够识别高级语言的,所以当我们运行一个高级语言程序的时候,就需要一个“翻译机”来从事把高级语言转变成计算机能读懂的机器语言的过程。这个过程分成两类,第一种是编译,第二