当前位置:首页 » 编程软件 » 编译器汇编器连接器

编译器汇编器连接器

发布时间: 2022-06-16 01:42:32

编译器跟编辑器有什么区别。还有什么是链接器

链接器(Linker)是一个程序,将一个或多个由编译器或汇编器生成的目标文件外加库链接为一个可执行文件。

是软体程序,一般是指用来修改电脑档案的编写软件,但也有人称 PE2、HE4(汉书)……等文书软件为编辑器。常见的编辑器有文本编辑器、网页编辑器、源程序编辑器、图像编辑器,声音编辑器,视频编辑器等。

简单讲,编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)

⑵ 编译软件具体是什么啊为属于系统软件啊

编译软件为汇编语言汇编器,例如C语言编译、连接器等等。

一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具),是支持计算机系统正常运行并实现用户操作的那部分软件。

有代表性的系统软件:操作系统,语言处理程序(如编译软件),数据库管理,辅助程序。

(2)编译器汇编器连接器扩展阅读:

语言处理程序:

编译软件CPU执行每一条指令都只完成一项十分简单的操作,一个系统软件或应用软件,要由成千上万甚至上亿条指令组合而成。直接用基本指令来编写软件,是一件极其繁重而艰难的工作。

计算机只能直接识别和执行机器语言,因此要计算机上运行高级语言程序就必须配备程序语言翻译程序,翻译程序本身是一组程序,不同的高级语言都有相应的翻译程序。

语言处理程序如汇编语言汇编器,C语言编译、连接器等。

为了提高效率,人们规定一套新的指令,称为高级语言,其中每一条指令完成一项操作,这种操作相对于软件总的功能而言是简单而基本的,而相对于CPU的一眇操作而言又是复杂的。用这种高级语言来编写程序(称为源程序)就象用预制板代替砖块来造房子,效率要高得多。

但CPU并不能直接执行这些新的指令,需要编写一个软件,专门用来将源程序中的每条指令翻译成一系列CPU能接受的基本指令(也称机器语言)使源程序转化成能在计算机上运行的程序。完成这种翻译的软件称为高级语言编译软件,通常把它们归入系统软件。

目前常用的高级语言有VB、C++、JAVA等,它们各有特点,分别适用于编写某一类型的程序,它们都有各自的编译软件。

参考资料:网络——系统软件

⑶ 简述一下编译器和链接器的作用

1、编译器:
编译器对源文件进行编译,就是把源文件中的文本形式存在的源代码翻译成机器语言形式的目标文件的过程,在这个过程中,编译器会进行一系列的语法检查。如果编译通过,就会把对应的CPP转换成OBJ文件。
2、链接器:
当链接器进行链接的时候,首先决定各个目标文件在最终可执行文件里的位置。然后访问所有目标文件的地址重定义表,对其中记录的地址进行重定向(加上一个偏移量,即该编译单元在可执行文件上的起始地址)。
然后遍历所有目标文件的未解决符号表,并且在所有的导出符号表里查找匹配的符号,并在未解决符号表中所记录的位置上填写实现地址。最后把所有的目标文件的内容写在各自的位置上,再作一些另的工作,就生成一个可执行文件。

⑷ 汇编器、编译器、编辑器

有链接器,编辑器,编译器.
GCC的话就是把 先把源文件预处理成纯C的文件,编译器把纯C文件转换成汇编程序,汇编器再把汇编程序变成 目标文件. 连接器 去链接库文件,然后生成可执行文件... ...

其实编译器,没有什么功能,就和文本 TXT一样,只不过多了一些语法高亮功能.
纯C文件,说白了,就是去掉一些没有的东西,比如注释,还有一些用不到的东西.
然后纯C文件变成汇编的代码,

⑸ 源代码到可执行 文件之间的转换用到的 编译器如gcc、汇编器、连接器等是怎么集成到IDE环境中的

在VisualC 2005中,如何调用其它编译器编译cpp文件呢?换句话说,如何把其它编译器集成到VC2005的IDE中呢?

象ICC这样的编译器安装之后会自动集成进来,要集成其他编译器那还得自己动手。下面介绍一种简单、浅层的“集成”方法。

你也许注意到了,在VC2005的IDE中是不能编译单个.cpp文件的,除非把它放在工程中。但是,我们可以通过调用外部工具实现编译单文件。

下面以调用G 为例说明如何编译单个.cpp文件。如果要编译单个.c文件,使用GCC即可,方法同理。

也许你现在还不知道G 。G 是GCC中的一员。GCC的含义是GNU编译器集合(GNUCompilerCollection),包括C、C 、Objective-C、Fortran、Java、Ada连同与这些语言相配的库等。GCC被誉为“世界上最重要的软件”。许多免费的编译器都是GCC的移植版—MinGW(MinimalistGNUforWindows)中携带的编译器就是如此。

以MinGW为例,我们可以下载DevC ,DevC 目前最新版为4.9.9.2。安装DevC 的同时就安装了MinGW,其中包含了G 3.4.2.

假设DevC 安装在D:\Dev-Cpp目录下。

下面我们在VC2005的菜单点击“工具(Tools)->外部工具(ExternalTools)->添加(Add)”。

分别填入:

标题(Title):GNUC Compiler

命令(Command):D:\Dev-Cpp\bin\g .exe

参数(Arguments):-Wall-o$(ItemFileName)$(ItemFileName)$(ItemExt)-time

初始目录(Initialdirectory):$(ItemDir)

再钩选下面的"使用输出窗口(UseOutputwindow)".

说明:如果你已经把D:\Dev-Cpp\bin\目录添加到系统环境变量中,那么Command指定为g .exe即可。Cygwin同理。

这些参数只是一个参考。你可以查阅VC编译器的宏设置你需要的参数。

干脆顺带补充一下DigitalMarsC 编译器的参考参数设置:

标题(Title):DigitalMars

命令(Command):C:\dm\bin\dmc.exe

参数(Arguments):$(ItemFileName)$(ItemFileName)$(ItemExt)

初始目录(Initialdirectory):$(ItemDir)

好,下面切换到main函数所在文件,点击工具(Tools)菜单下的“GNUC Compiler”开始编译。

注意g 此时编译的指是纯C 程序,对于包含int_tmain(intargc,_TCHAR*argv[])这类VC特有的C 程序自然是无法通过编译的。

如果编译没有出错,对于早期版本的g 而言,Outputwindow是没有任何输出的。

而对于较新版本的g ,将输出类似以下的信息:

#cc1plus0.670.22
#as0.050.01
#collect20.360.19

这是-time报告的编译过程中每个子过程所占用的CPU时间。

当然,你还可以更改编译参数,使输出窗口输出其他编译信息。

我们还可以通过添加外部工具来实现运行g 生成的程序的功能。步骤如下:

在VC2005的菜单点击“工具(Tools)->外部工具(ExternalTools)->添加(Add)”。

分别填入:

标题(Title):RunasC Application

命令(Command):%systemroot%\system32\cmd.exe

参数(Arguments):/c$(ItemFileName).exe

初始目录(Initialdirectory):$(ItemDir)

不要钩选下面的“使用输出窗口”和“退出时关闭”。

注意:cpp文件必须放在工程中,g 生成的程序才能被运行!

用MinGW的g 编译出的程序可以在没有安装MinGW的Windows系统上运行!

但是在Cygwin/gcc下编译出来的程序,在windows执行必须依赖cygwin1.dll。

通过VC2005创建不带预编译头的Win32控制台应用程序空环境,这样编译出来的可执行文件也不是放在哪台机子都能跑的。但是常规空环境可以做到。

下面讲讲如何设置快捷键。

点击菜单中的"工具->自定义",

点击右下角的"键盘",

点击"按快捷键"下面的文本框,

按下Shift Ctrl F7,如果这个快捷键已经分配给了其他的命令,更换一个即可。

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

汇编器(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)

⑺ dsp 汇编器与链接器

编译器将原代码c或c++编译成汇编asm文件,汇编器将asm文件汇编为目标文件obj(二进制文件),连接器将obj和lib等连接为最后的out文件(二进制)

⑻ 电脑里自带汇编编译器和连接器吗

好像没有,需要自己下载
dos下用masm5.0 link.exe
网上很多的

⑼ 编译器构造原理

编译器,是将便于人编写,阅读,维护的高级计算机语言翻译为计算机能识别,运行的低级机器语言的程序。
编译器将源程序作为输入,翻译产生使用目标语言的等价程序。源程序一般为高级语言,如C++等,而目标语言则是汇编语言或目标机器的目标代码,有时也称作机器代码。
一个现代编译器的主要工作流程如下:
源代码→预处理器→编译器→汇编程序→目标代码→连接器→可执行程序

⑽ 英语编译程序怎么翻译

编译程序一般翻译为compiler。
实际上在整个编译过程中会用到很多的工具,预处理器、编译器、汇编器、定位/分配器、连接器。

热点内容
定义dns服务器的ip 发布:2025-05-17 20:32:37 浏览:952
android判断图片 发布:2025-05-17 20:32:33 浏览:832
安卓12什么时候适配小米 发布:2025-05-17 20:31:47 浏览:69
c语言字符串初始化 发布:2025-05-17 20:18:43 浏览:36
安卓融e联推送需要什么权限 发布:2025-05-17 20:18:39 浏览:268
我的世界无限武魂服务器 发布:2025-05-17 20:17:09 浏览:371
安卓手游脚本语言 发布:2025-05-17 19:53:07 浏览:21
找圈算法 发布:2025-05-17 19:49:19 浏览:410
数据库的存取方法 发布:2025-05-17 19:48:36 浏览:125
androidapp测试 发布:2025-05-17 19:48:19 浏览:389