⑴ 编译程序和解释程序有何区别
编译程序能生成目标程序,而解释程序不能。
⑵ “编译方式”和“解释方式”的区别
程序员编写的程序现在一般都是用高级语言编写的,如c/c++ 以及面向对象的visual 系列;这样编写的程序计算机是不能直接执行的,因为计算机只能执行二进制程序。因此要经过一个源程序代码翻译成二进制的过程。计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。
两者的区别如下:
解释方式:程序运行时,取一条指令,将其转化为机器指令,再执行这条机器指令。这种方式每次运行程序时都要重新翻译整个程序,效率较低,执行速度慢,如QB,不过现在很少再用这种低效的方式的设计语言了。
编译方式:程序运行时之前,将程序的所有代码编译为机器代码,再运行这个程序。然后每次执行的时候就可以直接执行这个翻译好的二进制文件了,这样的程序只需要翻译一次,效率明显要高很多,现在的大多数语言都是这种方式,网页中的asp.net 采用的也是这种方式。
简单的说,编译就是全文翻译,全部翻译完才执行。解释就相当于同声翻译,边翻译边执行。
⑶ 编译执行和解释执行的区别
一、主体不同
1、编译执行:由编译程序将目标代码一次性编译成目标程序,再由机器运行目标程序。
2、解释执行:将源语言直接作为源程序输入,解释执行解释一句后就提交计算机执行一句,并不形成目标程序。
二、优势不同
1、编译执行:相比解释执行编译执行效率高,占用资源小,适合复杂程序
2、解释执行:开发速度快,出现严重BUG的几率小。
三、缺点不同
1、编译执行:兼容性差,例如在windows平台上写的编译程序一般不可以在unix平台上运行。
2、解释执行:解析需要时间,不生成目标程序而是一句一句的执行的方式会造成计算机资源的浪费,即执行效率低。
⑷ 编译方式和解释方式的根本区别是什么
计算机内部运行时所能识别的语言是机器语言即0和1,我们普通编的程序或网站网页都是用人能理解的工具编辑的源程序代码,这种代码电脑是不能直接识别和运行的。需要进行转换成机器能识别的代码。转换过程有两种形式。编译方式和解释方法。
编译方式,就是把需要运行的源代码通过工具一次性编译成机器代码如我们常见的文件名后.exe或.com的这种类型,电脑运行时直接运行编译过的程序,速度运行快.
解释方式:源程序代码文件可能很很多,很长,每次程序运行时.都需要一个文件、一句一句调入电脑然后翻译成机器代码,再运行,时间长\运行速度慢。如现在网站常用的.asp就是这种格式。
⑸ java中编译的意思,解释的意思。
Java是编译的,因为他把源代码变成了字节码,而不是每次都解释源代码。
Java是解释的。因为字节码是被JVM负责执行,而不是真正的二进制码!
⑹ 编译执行和解释执行有什么区别
编译执行就像你买的《C Primer》中文版,译者全部翻译完(编写代码),拿到出版社去(编译器),编辑们校对没有发现错别字(编译),然后出版给你看,只要出版社(编译器)工作正常,那么就可以认为书的内容肯定没有错(可以正确执行);
解释执行就像你去听报告,老外一边讲(代码),同声传译(解释器)一边翻给你听(解释执行),如果哪一句老外讲错了(代码出错),同声传译才卡壳,但是前面已经翻译出去的,肯定是没啥问题(部分正常执行了);
这么说你理解了没有?编译执行效率高,但灵活性差(任何修改都要重编译),代码保密性好;解释执行效率低一点(这是以前的说法,现代解释器的效率也可以非常高),灵活性好,代码保密性差;
还有一种介于两者之间的执行方式,半编译执行,像大名鼎鼎的Java和C#等等,就是这种方式,是实现跨平台的优良解决方案。
⑺ 编译和解释的区别是什么
编译(compilation , compile) ,利用编译程序从源语言编写的源程序产生目标程序的过程。用编译程序产生目标程序的动作。 编译就是把高级语言变成计算机可以识别的2进制语言。
解释直译语言由解释器将代码一句一句运行。
理论上,任何编程语言都可以是编译式,或直译式的。它们之间的区别,仅与程序的应用有关。
⑻ 编译程序和解释程序都是什么意思
1、编译程序是把用高级程序设计语言或计算机汇编语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序,属于采用生成性实现途径实现的翻译程序。编译程序以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出;编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
2、解释程序是高级语言翻译程序的一种,它将源语言书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。
(8)编译解释扩展阅读:
编译程序的实现算法较为复杂。这是因为它所翻译的语句与目标语言的指令不是一一对应关系,而是一多对应关系;同时也因为它要处理递归调用、动态存储分配、多种数据类型,以及语句间的紧密依赖关系。但是,由于高级程序设计语言书写的程序具有易读、易移植和表达能力强等特点,编译程序广泛地用于翻译规模较大、复杂性较高、且需要高效运行的高级语言书写的源程序。
⑼ 解释 编译和编译 汇编的区别是什么
解释和编译针对的是高级语言的。是高级语言转换成机器代码的方式。编译指的是一次性将程序代码给转换成机器代码,这样做好处是编译之后的可执行程序方便移植,可以优化程序代码,并且执行效率要比解释语言的高!解释是指边解释边运行,解释一条语句便执行一条。显然这样的程序执行效率是比较低的。比如C/C++用的是编译,而basic用的是解释。JAVA既用到解释,又用到编译。而汇编是一种低级程序设计语言,直接操纵底层硬件。是在机器语言(0,1代码串)的基础上采用助记符的方式发展而来的。很多病毒都是通过汇编语言写的。用汇编编写的程序执行效率非常高!只是不方便写程序。汇编语言是低级语言,没有语法,就是一条条机器指令的助记符而已,所以汇编的时候不需要语法分析。编译时把高级语言处理成机器指令的过程,编译的时候需要做词法分析和语法分析,然后是代码生成。