.asm是什么文件

.asm是什么文件,第1张

.asm文件是以asm作为扩展名的文件,是汇编语言的源程序文件。它是文本格式的文件,可以用任何文本编辑器(如:windows下的notepad、notepad+、editplus、ultraedit,dos下的edit.com、qe.exe等)进行创建或编辑。

这种类型的文件必须满足微软或borland或其他开源组织对汇编语言源代码的语法规则的要求。如果你写的.asm文件不满足语法规则、或者存在算法或者业务逻辑上的错误,前者将无法通过编译程序的编译,后者即使生成了可执行程序也不能得到你需要的结果。

与上节对应,.asm文件的编译器有微软的masm(masm32)、borland公司的tasm、开源组织的nasm等,通过这些编译器编译后将生成扩展名为obj的目标文件。再通过对应的链接程序(如link、tlink等)将obj文件转化为可执行的exe文件。

本质上都是2进制代码, 但是 obj 没有经过链接的重定位,不是可执行的代码。

而且一个obj对应一个cpp编译单元,里面的外部符号都没解析出来。

比如a.cpp 通过b.h使用了一个 b.cpp里定义的函数 func()那么a.cpp生成的obj里面只会有func() 这个函数名的调用而已,也就是一个(对a.obj来说的)外部符号。 只有经过链接成为了.exe, 相应于a.obj里面的func()的调用才会更新成实际的b.obj里面的func()的实际地址。 对全局变量也是同样的道理。

可执行文件 (executable file) 指的是可以由 *** 作系统进行加载执行的文件,一般有: .exe文件 .sys文件 .com  .dll  BAT文件的格式。

可执行(PE)文件格式,可加载到内存中,由 *** 作系统加载程序执行,通常用于处理或协助处理其他文件。比如:myfile.txt双击打开由notepad.exe记事本程序来进行编辑。

在DOS下,生成可执行文件的步骤相对简单。源程序通过编译器编译成obj文件,然后通过链接器将obj文件链接成exe文件,不同语言的发展过程是相似的。

扩展资料

可执行除了文件还有:可执行的程序、可执行的文件病毒、可执行的代码、可执行文件的解压器,可执行的命令文件等类型。都是可以由 *** 作系统进行加载执行的文件。

可执行文件的内容从源程序中写入的代码和数据定义转换而来。唯一的例外是具有覆盖范围的exe文件,它将一些自定义数据附加到基本的exe文件。

Win32可执行文件叫做PE文件。PE文件的基本结构和DOS可执行文件有很大的不同。它把程序中的不同部分分成各种节区其中可以有一个节区是放置各种资源。

参考资料来源:百度百科-可执行文件


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/tougao/12031122.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存