12 2013 档案

摘要:链接:把各个模块之间相互引用的部分都处理好,使得各个模块间能够正确的衔接,其过程主要包括:地址和空间的分配、符号决议和重定位动态链接库:windows 的.dll和linux的.so静态链接库:windows 的.lib和linux的.a 阅读全文
posted @ 2013-12-07 10:38 luolinux 阅读(117) 评论(0) 推荐(0)
摘要:1、词法分析:扫描器产生记号2、语法分析:语法分析器对记号进行语法分析,产生语法树3、语义分析:4、中间语言生成5、目标代码生成与优化 阅读全文
posted @ 2013-12-07 10:29 luolinux 阅读(103) 评论(0) 推荐(0)
摘要:预编译: 1、删除所有#define,展开宏定义 2、处理所有条件预编译指令,#if,#ifdef,#elif,#endif等 3、处理#include预编译命令,将被包含的文件插入到该预编译指令的位置 4、删除所有注释,//,/**/ 5、添加行号和文件名标志。便于编译时产生的错误定位 6、保留所有的#pragma编译器指令编译: 把预处理完的文件进行一系列的词法分析,语义分析,语法分析及优化后生产相应的汇编代码文件 gcc -S hello.c -o hello.s汇编: 将汇编代码转换成机器可以执行的指令 as hello.s -o hello.o链接: 与一些库文件或相关的文件生成最终 阅读全文
posted @ 2013-12-07 10:09 luolinux 阅读(265) 评论(0) 推荐(0)