
这个问题里的信息量太大,需要好几本书才能回答。只针对的题目唤册给简单的说说一个.exe是怎么生成的。
程序需要依靠源文件来编译,编译之后生成中间代码(.obj)文件,之后依靠链接器将所有的.obj文件以及依靠的.lib文件链接起来生成一个.exe的文件。
这是最简单的理解,现在稍微展开点说说.exe文件。
在Windows中,所有的可执凳伏行文件(.exe, .dll, .ocx, .sys等等)都是按照一定文件内容格式来组织——PE格式。PE格式记录了一个程序文件加载运行过程中的信息,例如文件类型,是一个dll还是一个exe;运行的平台,32位系统还是64位系统等等。当一个程序运行的时候,程序的加载器会根据PE格式的内容将程序文件中的数据段,代码段等等映射到内存中,并正确的导入程序要使用的系统API,同和粗宏时要将文件中的一些偏移地址修正为映射入内存之后的地址,之后调用程序代码的入口点来执行。就是这样一个过程涉及到了系统的内存管理,进程管理,线程调度等等一系列问题。
而这些PE格式的内容就是链接器在链接程序的时候填入的,换句话说就是链接器生成了一个PE文件用于执行。
每个 *** 作系统都会有自己所支持的可执行文件格式。PE格式是Windows平台独有的。
1、用记事本一类文本编辑工具通过计算机编程语言写源迟灶代码2、利用编译码帆扮工具编译、连接,常见编译工具Turbro
C、Visual
studio系列、MASM等很多。
3、经过以上步骤后,若代码无错误,便可得到轿前可执行的.exe文件
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)