㈠ 汇编器和编译器有什么区别
汇编器(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)
㈡ 汇编器和编译器有什么区别WINDOWS操作系统中是否包含这
汇编和编译是两个完全不同的概念.
汇编是指用汇编语言直接操纵机器,用汇编语言编的程序是不需要编译器进行编译的
编译是指把高级语言编的程序翻译成机器语言好让机器执行,不同的高级语言有不同的编译器
楼主可以看看<<汇编语言>>和<<编译原理>>这两本书就明白了
㈢ 编译器跟编辑器有什么区别。还有什么是链接器
链接器(Linker)是一个程序,将一个或多个由编译器或汇编器生成的目标文件外加库链接为一个可执行文件。
是软体程序,一般是指用来修改电脑档案的编写软件,但也有人称 PE2、HE4(汉书)……等文书软件为编辑器。常见的编辑器有文本编辑器、网页编辑器、源程序编辑器、图像编辑器,声音编辑器,视频编辑器等。
简单讲,编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)
㈣ 编译器 链接器 计算机 汇编语言 机器语言
对应的硬件是仿真器或CPU,因为这些程序经编译器后要进入单片机或DSP的。仿真器起到该作用。;;你的问题不太明确,希望我的回答能帮到你。
㈤ 汇编器、编译器、编辑器
有链接器,编辑器,编译器.
GCC的话就是把 先把源文件预处理成纯C的文件,编译器把纯C文件转换成汇编程序,汇编器再把汇编程序变成 目标文件. 连接器 去链接库文件,然后生成可执行文件... ...
其实编译器,没有什么功能,就和文本 TXT一样,只不过多了一些语法高亮功能.
纯C文件,说白了,就是去掉一些没有的东西,比如注释,还有一些用不到的东西.
然后纯C文件变成汇编的代码,
㈥ 汇编语言编译器的TASM的用法
TASM是Borland公司推出的汇编编译器,也是一种使用很广泛的编译器,和MASM相比,TASM的升级没有这么频繁。TASM早在1.0版本就有了对80386处理器指令的完全支持(MASM要到5.0版本才支持80386指令),1989年推出的1.01版本修正了1.0版的一些错误;早期的版本还有TASM 3.0和TASM 4.0,其中4.0版是TASM系列编译器编写DOS程序使用最广泛的版本。
到目前为止,TASM的最后一个版本是5.0版,这个版本支持Win32编程,并单独为Win32编程附带有一整套的32位程序:32位的编译器TASM32.EXE、链接器TLINK32.EXE和资源编译器BRC32.EXE。与这些32位程序对应的16位工具在软件包中依然存在,文件名为TASM.EXE,TLINK.EXE和BRC.EXE等。
TASM 5.0命令行的使用方法是:
TASM32 [选项] 源文件名[,[目标文件名],[列表文件名],[索引文件名]][;]
在Win32编程时TASM的常用选项如下表所示。
选 项
简 介
/ml,/mx,/mu
对大小写是否敏感:ml=全部敏感,mx=全局变量大小写敏感,mu=不敏感,Win32编程中必须用ml选项
/m#
允许第#次编译扫描时可以向前引用,一般使用/m2
/i路径
设定include文字所在的路径
/l,/la
lst文件的格式:/l为正常格式,/la为扩充格式
/zi,/zd,/zn
符号调试信息的控制:/zi为全部,/zd为仅有行号,/zn为不产生调试信息
TASM和MASM之间的导入库和目标文件等不能通用,程序员无法用Microsoft的链接器来链接TASM产生的obj文件,反之亦然,这是因为TASM的库文件和obj文件一直是OMF格式,与Microsoft使用的COFF格式不兼容
㈦ dsp 汇编器与链接器
编译器将原代码c或c++编译成汇编asm文件,汇编器将asm文件汇编为目标文件obj(二进制文件),连接器将obj和lib等连接为最后的out文件(二进制)
㈧ 汇编编译器,
如果你只是为了学习的话,推荐试试 em8086.
调试本身推荐试试 turbo debugger
汇编语言就是这样的,并不是为了方便学习而设计的。
㈨ 简述一下编译器和链接器的作用
1、编译器:
编译器对源文件进行编译,就是把源文件中的文本形式存在的源代码翻译成机器语言形式的目标文件的过程,在这个过程中,编译器会进行一系列的语法检查。如果编译通过,就会把对应的CPP转换成OBJ文件。
2、链接器:
当链接器进行链接的时候,首先决定各个目标文件在最终可执行文件里的位置。然后访问所有目标文件的地址重定义表,对其中记录的地址进行重定向(加上一个偏移量,即该编译单元在可执行文件上的起始地址)。
然后遍历所有目标文件的未解决符号表,并且在所有的导出符号表里查找匹配的符号,并在未解决符号表中所记录的位置上填写实现地址。最后把所有的目标文件的内容写在各自的位置上,再作一些另的工作,就生成一个可执行文件。
㈩ C编译器一般包括汇编器吗
楼主把概念搞混了,汇编器(比如MASM)全称是汇编编译器,用来编译汇编语言的。我想在一般的程序中,是用来编译内嵌的汇编码的。
汇编语言的大部分命令都和机器码一一对应,
而高级语言和汇编的伪指令是不和机器码一一对应的
(也许高级语言一句会转换为N句机器码)。
因此从某种意义上说,汇编码就相当于机器码。
创造汇编只不过是看着舒服点而已,
要不然输入的指令只能由0或1构成,
和这些东西打交道会多麻烦啊。
编译器的作用是,将源文件(.c/.cpp/.pas等)转换为目标代码(.obj/.dcu等)。这是已经是二进制代码了。
最后又连接器(Linker),将目标代码连接起来,
这样才形成了可执行文件