导航:首页 > 源码编译 > 汇编程序和编译程序差别

汇编程序和编译程序差别

发布时间:2023-04-05 18:13:02

编译程序和解释程序,汇编程序有什么区别

首先,汇编语言是一种语言,一种低级语言,和c,c++,vb......是一样的,和编译、解释不是一个概念;
关于解释程序
和编译程序的解释和关系如下:
a、解释程序
所谓解释程序是高级语言翻译程序的一种,它将源语言(如basic)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。这的确是很方便的,很适合于一些小型机的计算问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并提交执行这一组语句,这就造成很大浪费。
b、编译程序
这是一类很重要的语言处理程序,它把高级语言(如fortran、cobol、pascal、c等)源程序作为输入,进行翻译转换,产生出机器语言的目标程序,然后再让计算机去执行这个目标程序,得到计算结果。
编译程序工作时,先分析,后综合,从而得到目标程序。所谓分析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配和代码生成。为了完成这些分析综合任务,编译程序采用对源程序进行多次扫描的办法,每次扫描集中完成一项或几项任务,也有一项任务分散到几次扫描去完成的。下面举一个四遍扫描的例子:第一遍扫描做词法分析;第二遍扫描做语法分析;第三遍扫描做代码优化和存储分配;第四遍扫描做代码生成。
值得一提的是,大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。
在实际应用中,对于需要经常使用的有大量计算的大型题目,采用招待速度较快的编译型的高级语言较好,虽然编译过程本身较为复杂,但一旦形成目标文件,以后可多次使用。相反,对于小型题目或计算简单不太费机时的题目,则多选用解释型的会话式高级语言,如basic,这样可以大大缩短编程及调试的时间。

Ⅱ 请问汇编程序, 解释程序, 编译程序分别指

1、汇编程序

把汇编语言书写的程序翻译成与之等价的机器语言程序的翻译程序。汇编程序输入的是用汇编语言书写的源程序,输出的是用机器语言表示的目标程序。汇编语言是为特定计算机或计算机系列设计的一种面向机器的语言,由汇编执行指令和汇编伪指令组成。

采用汇编语言编写程序虽不如高级程序设计语言简便、直观,但是汇编出的目标程序占用内存较少、运行效率较高,且能直接引用计算机的各种设备资源。它通常用于编写系统的核心部分程序,或编写需要耗费大量运行时间和实时性要求较高的程序段。

2、解释程序

解释程序是一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但在运行用户程序时,它直接执行源程序或源程序的内部形式(中间代码)。因此,解释程序并不产生目标程序,这是它和编译程序的主要区别。

3、编译程序

编译程序也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。

它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。

(2)汇编程序和编译程序差别扩展阅读:

工作过程

1、汇编程序

输入汇编语言源程序。检查语法的正确性,如果正确,则将源程序翻译成等价的二进制或浮动二进制的机器语言程序,并根据用户的需要输出源程序和目标程序的对照清单;如果语法有错,则输出错误信息,指明错误的部位、类型和编号。最后,对已汇编出的目标程序进行善后处理。

2、解释程序

由总控程序完成初始化工作。依次从源程序中取出一条语句进行语法检查,如有错,输出错误信息;如果通过了语法检查,则根据语句翻泽成相应的指令并执行它。检查源程序是否已经全部解释执行完毕,如果未完成则继续解释并执行下一条语句,直到全部语句都处理完毕。

3、编译程序

先进行词法分析与语法分析,然后生成中间代码,接着对程序进行多种等价变换来代码优化,最后生成目标代码。

Ⅲ 编译程序和汇编程序有什么不同

1.机器码是计算机的唯一标识,一般取自计算机的序列号。机器语言是计算机执行的语言,一般的高级语言只有转化为机器语言,计算机才能识别,工作。2.机器码和机器语言都不是一样的,自然机器码不是唯一的机器语言。3怎么说呢,汇编程序和编译程序是不能放在同一起跑线上的,两个是不同的方面。计算机只能识别机器语言,所以当程序员用汇编语言编写程序的时候,机器必须将汇编语言转化为机器语言才行,这就要用到汇编程序来完成。而编译程序应该和解释程序放在一起,是为了将高级语言转化为机器语言,不同在于,是否产生可执行程序。呵呵,我自己答得,如果不懂,可以追问。

Ⅳ 什么是汇编程序和编译程序有什么区别

首先,简介一下计机原理,假如有一个由磁粉组成的硬盘,那么改变磁粉的排列,并通电,将引发电流大小的变化,这就是计机的数据来源。
那么,查看磁粉是难以看见的,间接的表示就是:用一个如winhex的软件打开,里面的十六进制数就间接说明了磁粉的排列物理状况。同样,手动改磁粉即使生效,也未必“有用”。正如你所想,没错,既然电脑这机器这么麻烦,但它有人买,因为有键盘。一台正常的电脑由“固化”“程序”(bios)硬件去启用主板上的各个元件,再拿个硬盘放操作系统。自然有办法写入数据了。
好了,回归正题,所谓汇编,就是可以从那些有效的十六进制数据得出的东东,比如“b4....”在某一场合表示mov ......,于是乎,对照主板商等给出的文档,想进行编写一个程序,那么就“mov.......”什么的对着“b4........”什么的堆进扇区就行了。编译程序,动词来说的话,是一个动作,不是程序,汇编程序是一个程序,名词来说的话,风马牛不相干,因为根据上述原理,把汇编代码或c代码转成有效的“磁粉”数据,这就是一个编译的过程,结果出来的就是编译程序。

Ⅳ 汇编和编译程序的区别急

汇编程序是将汇编语言(低级语言)翻译成二进制机器指令的程序
编译程序是将高级语言(java,c++)翻译成二进制机器指令的程序

Ⅵ 汇编器和编译器有什么区别

汇编器(Assembler)是将汇编语言翻译为机器语言的程序。一般而言,汇编生成的是目标代码,需要经链接器(Linker)生成可执行代码才可以执行。
汇编语言是一种以处理器指令系统为基础的低级语言,采用助记符表达指令操作码,采用标识符表示指令操作数。作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇编语言原文件汇编成机器可执行的代码。常用的高级语言编译器有Microsoft公司的MASM系列和Borland公司的TASM系列编译器,还有一些小公司推出的或者免费的汇编软件包等。

编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器(Linker) → 可执行程序 (executables)
高级计算机语言便于人编写,阅读交流,维护。机器语言是计算机能直接解读、运行的。编译器将汇编或高级计算机语言源程序(Source program)作为输入,翻译成目标语言(Target language)机器代码的等价程序。源代码一般为高级语言 (High-level language), 如Pascal、C、C++、Java、汉语编程等或汇编语言,而目标则是机器语言的目标代码(Object code),有时也称作机器代码(Machine code)。
对于C#、VB等高级语言而言,此时编译器完成的功能是把源码(SourceCode)编译成通用中间语言(MSIL/CIL)的字节码(ByteCode)。最后运行的时候通过通用语言运行库的转换,编程最终可以被CPU直接计算的机器码(NativeCode)

Ⅶ 什么是汇编,它与编译有什么不同

【汇编程序】:把汇编语言书写的程序翻译成与之等价的机器语言程序的翻译程序。【编译程序】:把用高级程序设计语言书写的源程序,翻译成等价的计算机汇编语言或机器语言的目标程序的翻译程序。【解释程序】:对源程序边解释翻译成机器代码边执行的高级语言程序。高级语言的程序的执行的途径:1)源程序(高级语言)->【编译程序】->目标程序(汇编语言)->【汇编程序】->目标程序(机器语言)->计算结果2)源程序(高级语言)->【编译程序】->目标程序(机器语言)->计算结果3)源程序(高级语言)->【解释程序】(逐条读出源程序中的语句并解释执行,即在解释程序的执行过程中并不产生目标程序)->计算结果

阅读全文

与汇编程序和编译程序差别相关的资料

热点内容
dd命令u盘 浏览:568
单片机生日快乐程序 浏览:891
安卓手机连车载的叫什么 浏览:223
怎么让自己的手机键盘变得好看app 浏览:53
能看qq的文件夹 浏览:515
android二维码生成代码 浏览:567
焦炉气压缩机 浏览:402
imap接收邮件服务器地址 浏览:291
小乔肖恩解压密码 浏览:645
php网页网盘源码 浏览:181
签到任务源码 浏览:814
母亲节的文案怎么写app 浏览:984
加密协议aes找不到 浏览:250
java服务器端开发源码 浏览:551
编译器编译运行快捷键 浏览:333
住房app怎么快速选房 浏览:174
怎么在电脑上编译成功 浏览:214
单片机可调时钟设计方案 浏览:193
qq文件夹密码忘记怎么找回 浏览:683
php扩展插件 浏览:610