main.c(c/c++ )–>预编译-( .i )->编译(.s )–>汇编( .o )–>链接( .exe)
每个步骤所执行的操作:
1、预编译(.i)
①进行文本替换、宏替换。
②删除注释
③添加行号
④#pragma编译器处理
2、编译(.s)
①对词法、语法进行检查
②对代码进行一定的优化
3、汇编(.o):指令转化为二进制
4、链接(.exe):将所有文件都汇集到一起
①合并段和符号表
②确定段大小和起始偏移量
③符号解析(在符号解析的地方找到符号定义的地方)
④符号重定位