程序执行完整过程

本文详细介绍了程序从.c文件生成.exe文件的四个步骤:预处理、编译、汇编和链接。预处理处理头文件、宏替换等;编译阶段进行语法分析、词法分析等生成汇编代码;汇编阶段将汇编代码转为二进制目标文件;链接阶段将目标文件组合成可执行程序,涉及静态链接和动态链接的区别及其优缺点。
摘要由CSDN通过智能技术生成

.c文件生成.exe文件的过程总共是经历了预处理,编译,汇编,链接,这四个过程。

1、预处理

第一步发生的是预编译,使用-E指令会使程序只进行到预编译指令。经过预编译指令后的会生成一个.i文件。
在这里插入图片描述
在预编译的过程中,主要处理源代码中的预处理指令,引入头文件,去除注释,处理所有的条件编译指令(#ifdef),宏的替换,添加行号,保留所有的编译器指令。

2、编译

使用-S指令编译经过预处理的文件。编译过程所进行的是对预处理后的文件进行语法分析,词法分析,语义分析,符号汇总,然后生成汇编代码。

在这里插入图片描述

3、汇编

使用-c指令。汇编过程将汇编代码转成二进制文件(重定位目标文件 .o文件),二进制文件就可以让机器来读取。每一条汇编语句都会产生一句机器语言。
在这里插入图片描述
在这里最终会生成一个重定位目标文件 .o文件&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值