原创 .S和.s的区别

2012-9-29 16:13 1184 17 17 分类: MCU/ 嵌入式

.s  汇编语言源程序;  操作: 汇编

.S 汇编语言源程序;  操作: 预处理 汇编

-------------------------------------------------------------------------------------------------------------------------------------------------

1.小写的 s文件,在后期阶段不会再进行预处理操作了,所以我们不能在其内写上预处理语句.

    一般是 .c 文件进过汇编器处理后的输出. 如 GCC 编译器就可以指定 -S 选项进行输出. 且是经过预处理器处理后         的了.

 

2.大写的 S 文件,还会进行预处理、汇编等操作,所以我们可以在这里面加入预处理的命令. 编译器在编译汇编大 S 

    文件之前会进行预处理操作. 

    常用这种形式的汇编文件作为工程内的汇编源文件(如 Linux 和 u-boot),  因为在文件内可以很方便的使用常用的

    预处理指令来进行宏定义,条件编译, 和文件包含操作. 

    如: #include, #define, #ifdef, #else, #if, #elif, #endif 等预处理指令.

    具体的应用可以参考 Linux 或者 u-boot 的 .S 源代码.

==================================================================================== 

文章评论0条评论)

登录后参与讨论
我要评论
0
17
关闭 站长推荐上一条 /2 下一条