即时编译器预先把程序编译完成,当执行时就直接调用。
而JAVA解释器则是当需要调用该代码时才临时编译解释,而且没执行一次就要编译一次,而即时编译器则是一次编译多次执行。
㈡ 超赞,编译器和解释器的异同,瞬间明白了
编译器和解释器的最大不同就是:以 WINDOWS 系统为例进行讲解就是:编译器是可以把用户编写的源程序(例如:C 语言源程序)经过编译、链接产生成一个在 WINDOWS 系统下面可独立运行的二进制代码(以 *.exe 为后缀的);而解释器则必须在高级语言的解释环境中才能够运行用户编写的源程序,一旦退出了解释器,那么用户编写的源程序将无法执行。例如:以前的 BASIC 语言就是解释执行、而不是编译执行的。即:在 BASIC 解释环境中,可以执行用户编写的以 *.BAS 为后缀的源程序,但是一旦退出了 BASIC 解释器,那么用户编写的 *.BAS 源程序就无法执行了。
㈢ 计算机都有编译器和解释器吗
编译器是程序员开发程序用的~!
而解释器则是执行脚本程序用到~
编译器和解释器都是软件,非硬件``
而计算机上通常在系统中已装有某些脚本或批处理的解释器。
编译器大多数就没有内置安装了。
㈣ jdk中的编译器是什么,解释器是什么
编译器是指java程序运行时对java代码进行语法检查和代码规范的一种机制,若不符合代码规范和语法有错误编译器将会报错,代码将无法运行。解释器我很少听说,是不是编译器报错的时候出现的错误提示?
㈤ 计算机有解释器为什么还要有编译器 明显是编译器要快捷于解释器啊…………
下面这个回答可以参考:
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快;
而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.
这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)
编译是将源程序翻译成可执行的目标代码,翻译与执行是分开的;而解释是对源程序的翻译与执行一次性完成,不生成可存储的目标代码。这只是表象,二者背后的最大区别是:对解释执行而言,程序运行时的控制权在解释器而不在用户程序;对编译执行而言,运行时的控制权在用户程序。
解释具有良好的动态特性和可移植性,比如在解释执行时可以动态改变变量的类型、对程序进行修改以及在程序中插入良好的调试诊断信息等,而将解释器移植到不同的系统上,则程序不用改动就可以在移植了解释器的系统上运行。同时解释器也有很大的缺点,比如执行效率低,占用空间大,因为不仅要给用户程序分配空间,解释器本身也占用了宝贵的系统资源。
㈥ 编译器和解释器的主要区别是什么他们相对于对方各自的优点
解释器是解释执行的源代码,编译器是将源代码编译成目标代码
他们最大的区别是程序运行时需要解释器边解释边执行,而编译器则在运行时是完全不需要的
解释器的优点是比较容易让用户实现自己跨平台的代码,比如java,php等,同一套代码可以在几乎所有的操作系统上执行,而无需根据操作系统做修改;
编译器的目的就是生成目标代码再由连接器生成可执行的机器码,这样的话需要根据不同的操作系统编制代码,虽然有像Qt这样的源代码级跨平台的编程工具库,但在不同的平台上仍然需要重新编译连接成可执行文件,但其执行效率要远远高于解释运行的程序。
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快;
而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.
这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)
㈦ java解释器和编译器分别是什么
Java的编译方式有两种,一种是和C++等语言一样的,把源代码编译成和本地机器平台相关的机器语言,叫即时编译。另一种是编译成一种中间的字节码,与机器平台无关的,这种也是常用的,叫解释型的。
即时编译器因为产生的是本地机器的机器码,能直接执行;不像字节码还要在JVM(Java虚拟机)上解释运行,所以执行得更快些。
请采纳!