彙編文件 .s 和 .S 區別

.s 彙編語言源程序;  操作: 彙編
.S彙編語言源程序;
 操作: 預處理 + 彙編

1.小寫的 s文件,在後期階段不會再進行預處理操作了,所以我們不能在其內寫上預處理語句。
    一般是 .c 文件經過彙編器處理後的輸出。 如 GCC 編譯器就可以指定 -S 選項進行輸出, 且是經過預處理器處理後         的了。

2.大寫的 S 文件,還會進行預處理、彙編等操作,所以我們可以在這裏面加入預處理的命令。編譯器在編譯彙編大 S 
    文件之前會進行預處理操作。
    常用這種形式的彙編文件作爲工程內的彙編源文件(如 Linux 和 u-boot), 因爲在文件內可以很方便的使用常用的
    預處理指令來進行宏定義,條件編譯, 和文件包含操作。
    如: #include, #define, #ifdef, #else, #if, #elif, #endif 等預處理指令。
    具體的應用可以參考 Linux 或者 u-boot 的 .S 源代碼。


本文來自 Ultraman_hs 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/ultraman_hs/article/details/53411728?utm_source=copy

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章