编译连接原理

main.c(c/c++ )–>预编译-( .i )->编译(.s )–>汇编( .o )–>链接( .exe)

每个步骤所执行的操作:

1、预编译(.i)
①进行文本替换、宏替换。
②删除注释
③添加行号
④#pragma编译器处理

2、编译(.s)
①对词法、语法进行检查
②对代码进行一定的优化

3、汇编(.o):指令转化为二进制

4、链接(.exe):将所有文件都汇集到一起
①合并段和符号表
②确定段大小和起始偏移量
③符号解析(在符号解析的地方找到符号定义的地方)
④符号重定位

猜你喜欢

转载自blog.csdn.net/weixin_43364781/article/details/84402053
今日推荐