程序编译方式和解释方式的区别
首先,汇编语言是一种语言,一种低级语言,和c,c++,vb......是一样的,和编译、解释不是一个概念;
关于解释程序
和编译程序的解释和关系如下:
a、解释程序
所谓解释程序是高级语言翻译程序的一种,它将源语言(如basic)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。这的确是很方便的,很适合于一些小型机的计算问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并提交执行这一组语句,这就造成很大浪费。
b、编译程序
这是一类很重要的语言处理程序,它把高级语言(如fortran、cobol、pascal、c等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。
编译程序工作时,先分析,后综合,从而得到目标程序。所谓分析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配和代码生成。为了完成这些分析综合任务,编译程序采用对源程序进行多次扫描的办法,每次扫描集中完成一项或几项任务,也有一项任务分散到几次扫描去完成的。下面举一个四遍扫描的例子:第一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码优化和存储分配;第四遍扫描做代码生成。
值得一提的是,大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。
在实际应用中,对于需要经常使用的有大量计算的大型题目,采用招待速度较快的编译型的高级语言较好,虽然编译过程本身较为复杂,但一旦形成目标文件,以后可多次使用。相反,对于小型题目或计算简单不太费机时的题目,则多选用解释型的会话式高级语言,如basic,这样可以大大缩短编程及调试的时间。
Ⅱ 编译和解释的区别
1、在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的谨搏哪执行过程,而在解释方祥码式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序银芹的控制权在解释程序。
2、解释器翻译源程序时不生成独立的目标程序,而编译器则将源程序翻译成独立的目标程序。
Ⅲ 编译方式和解释方式的区别
区别:编译方式运裤蚂行速度快,而解释方式运胡亩埋行速度慢。
1、编译方式为编译和运行。即先通过一个存放在计算机内的.称为编译程序的机器语言程序,把源程序全部翻译成和机器语言表示等价的目标程序代码,然后计算机在运行此目标代码,以完成源程序要耐铅处理的运算并取得结果。
2、解释方式是每执行一句就翻译一句即边执行边解释。这种方式每次运行程序时都要重新翻译整个程序,效率较低,执行速度慢。
Ⅳ 编译方式和解释方式的区别
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"翻译"通常有两种方式,即编译方式和解释方式。编译方式是指利用事先编好的一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户将高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是指源程序进入计算机后,解释程序边扫描边解释,逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。如PASCAL、FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。 编译程序、解释程序、汇编程序是3种语言处理程序。其区别主要为:汇编程序(为低级服务)是将汇编语言书写的源程序翻译成由机器指令和其他信息组成的目标程序。解释程序(为高级服务)直接执行源程序或源程序的内部形式,一般是读一句源程序,翻译一句,执行一句,不产生目标代码,如BASIC解释程序。编译程序(为高级服务)是将高级语言书写的源程序翻译成与之等价的低级语言的目标程序。编译程序与解释程序最大的区别之一在于前者生成目标代码,而后者不生成;此外,前者产生的目标代码的执行速度比解释程序的执行速度要快;后者人机交互好,适于初学者使用。用COBOL、FORTRAN等语言编写的程序考虑到执行速度一般都是编译执行。
Ⅳ 编译方式和解释方式的根本区别是什么
首先,我们编写的程序现在一般都是用
高级语言
编写的,如c/c++
以及面向对象的visual
系列;我们编写的程序计算机是不能直接执行的,因为计算机只能执行二进制程序.因此要经过一个将我们写的代码翻译成二进制的过程.
完成这个过程一般有两种方式:1.解释方式
2.
编译方式
1.解释方式是每执行一句就翻译一句即边执行边解释.这种方式每次运行程序时都要重新翻译整个程序,效率较低,执行速度慢,如QB,不过现在几乎
没有人
再用这种低效的方式的
设计语言
了.
2.编译方式是在程序第一次执行前就先执一个全部的翻译过程,然后每次执行的时候就可以直接执行这个翻译好的
二进制文件
了,这样的程序只需要翻译一次,效率明显要高很多,现在的大多数语言都是这种方式,网页中的asp.net
采用的也是这种方式.
Ⅵ 计算机高级程序语言的两种工作方式(解释方式和编译方式)的区别是什么
高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可
将它们分为两类:
1.解释类
执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序,典型的解释型的高级语言有BASIC。
2.编译类
编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(*.OBJ)才能执行,只有目标文件而没有源代码,修改很不方便。现在大多数的编程语言都是编译型的,例如Visual C++、Delphi等。
Ⅶ 编译和解释的区别是什么
编译和解释的区别是与计算机的交流方式不同、运行环境不同、运行速度不同。
一、与计算机的交流方式不同
编译是将源程序翻译成可执行的目标代码,执行可执行程序文件,翻译与执行是分开的。
解释程序不产生目标代码,它逐条地取出源程序中的语句,边解释边执行,解释器把源代码文件边解释成机器语言边交给CPU执行。
二、运行环境不同
编译程序跨平台性不好,不同操作系统,调用底层的机器指令不同,需为不同平台生成不同的机器码文件,编译程序每次修改源代码,都要重新编译,生成机器码文件。
解释程序可跨平台使用,因为解释器已经做好了对不同平台的交互处理,用户写的源代码不需要再考虑差异性,源代码所有平台都可以直接执行,解释程序可以随时修改,立刻生效,改完源代码后,直接运行看效果。
三、运行速度不同
编译程序执行速度快,因为你的程序代码已经翻译成了是计算机可以理解的机器语言。
解释程序运行效率低,所有的代码均需经过解释器边解释变执行,速度比编译型慢很多。
Ⅷ 编译程序和解释程序有何区别
编译程序能生成目标程序,而解释程序不能。
Ⅸ 在程序设计中,编译与解释的区别是什么
首先,我们编写的程序现在一般都是用高级语言编写的,如c/c++
以及面向对象的visual
系列;我们编写的程序计算机是不能直接执行的,因为计算机只能执行二进制程序.因此要经过一个将我们写的代码翻译成二进制的过程.
完成这个过程一般有两种方式:1.解释方式
2.
编译方式
1.解释方式是每执行一句就翻译一句即边执行边解释.这种方式每次运行程序时都要重新翻译整个程序,效率较低,执行速度慢,如QB,不过现在几乎没有人再用这种低效的方式的设计语言了.
2.编译方式是在程序第一次执行前就先执一个全部的翻译过程,然后每次执行的时候就可以直接执行这个翻译好的二进制文件了,这样的程序只需要翻译一次,效率明显要高很多,现在的大多数语言都是这种方式,网页中的asp.net
采用的也是这种方式.