‘壹’ 下面是关于解释程序和编译程序的叙述,正确的是()
C、D
解释程序是一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但在运行用户程序时,它直接执行源程序或源程序的内部形式(中间代码)。因此,解释程序并不产生目标程序,这是它和编译程序的主要区别。
解释程序它逐条地取出源程序中的语句,边解释,边执行。编译的话就是只要编译一次,下次再执行就不用再解释了。
(1)只有编译程序产生目标程序扩展阅读:
解释程序的工作方式非常适于人通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。
这的确是很方便的,很适合于一些小型机的计算问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并提交执行这一组语句,这就造成很大浪费。
对源程序边解释翻译成机器代码边执行的高级语言程序。所以,解释程序的功能是:解释执行高级语言程序。由于它的方便性和交互性较好,早期一些高级语言采用这种方式,如BASIC、dBASE。但它的弱点是运行效率低,程序的运行依赖于开发环境,不能直接在操作系统下运行。
网络-解释程序
‘贰’ 用高级语言编写的源程序必须经过编译,产生目标程序后才能运行,这句话对吗为什么
目标程序不能运行,必须再经过连接成可执行文件才能运行。
而且像java 和c#的程序编译后也不是目标程序。
‘叁’ 为什么编译程序生成的目标程序不一定是可执行程序 难道不是经过了编译、链接、运行了嘛
你自己都说出来了,编译显然不等于编译+链接啊
编译出来的可能是中间代码,例如JAVA。
‘肆’ 解释程序可以产生目标程序吗
不可以,目标程序是编译器产生的
解释程序是一边执行一边编译成机器代码的,
所以他的速度没有编译器的快
‘伍’ 解释程序和编译程序那个能产生目标程序
都可以产生目标程序,不同的是,编译程序是把高级语言编写的源程序翻译成机器语言的目标程序.解释程序,是把某种程序设计语言编写的源程序翻译成机器语言的目标程序,且翻译一条,执行一条的原则
‘陆’ 编译程序和解释程序均能产生目标程序吗
不能
因为:编译程序能产生目标程序而解释程序则不能
补充:解释程序也称为解释器,它或者直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行;编译程序(编译器)则是将源程序翻译成目标语言程序,然后在计算机上运行目标程序。两种语言处理程序的根本区别是:在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,而在解释方式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。解释器翻译源程序时不生成独立的目标程序,而编译器则将源程序翻译成独立的目标程序。
补充:编译程序(Compiler,compiling program)也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
‘柒’ 12. 编译程序和解释程序同属于语言处理程序,下列关于它们的叙述中正确的是____________ A. 只有解释程序
b呗 给你详细解释一下
A、解释程序所谓解释程序是高级语言翻译程序的一种,它将源语言(如BASIC)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。这的确是很方便的,很适合于一些小型机的计算问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并提交执行这一组语句,这就造成很大浪费。B、编译程序这是一类很重要的语言处理程序,它把高级语言(如FORTRAN、COBOL、Pascal、C等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。编译程序工作时,先分析,后综合,从而得到目标程序。所谓分析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配和代码生成。为了完成这些分析综合任务,编译程序采用对源程序进行多次扫描的办法,每次扫描集中完成一项或几项任务,也有一项任务分散到几次扫描去完成的。下面举一个四遍扫描的例子:第一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码优化和存储分配;第四遍扫描做代码生成。值得一提的是,大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。在实际应用中,对于需要经常使用的有大量计算的大型题目,采用招待速度较快的编译型的高级语言较好,虽然编译过程本身较为复杂,但一旦形成目标文件,以后可多次使用。相反,对于小型题目或计算简单不太费机时的题目,则多选用解释型的会话式高级语言,如BASIC,这样可以大大缩短编程及调试的时间。
‘捌’ 汇编程序和编译程序哪个产生目标程序
各种软件,是不同的。
有的汇编程序,直接就生成可执行文件,根本就没有目标程序。
‘玖’ 把源程序转换为目标程序的过程叫什么
一、把源程序转换为目标程序的过程叫编译。
二、什么是编译(compilation,compile)
1、利用编译程序从源语言编写的源程序产生目标程序的过程。
2、用编译程序产生目标程序的动作。编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。
3、编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。
‘拾’ 编译程序是否能够产生目标程序
是的。虽然常用的集成开发环境把编译过程及链接过程连在一起,但从严格意义上讲,我们通常说的编译(静态编译)是把源程序转换成语义等价的目标程序,然后由链接器(linker)把一个(或多个)目标程序与程序库链接成可执行文件