編譯程序(Compiler,compiling program)也稱為編譯器,是指把用高級程序設(shè)計語言書寫的源程序,翻譯成等價的機(jī)器語言格式目標(biāo)程序的翻譯程序。作為一個程序員,我們應(yīng)該了解它的過程,才能 更好的工作和學(xué)習(xí)。
創(chuàng)新互聯(lián)建站擁有10余年成都網(wǎng)站建設(shè)工作經(jīng)驗,為各大企業(yè)提供網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),對于網(wǎng)頁設(shè)計、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、重慶APP軟件開發(fā)、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、程序開發(fā)、網(wǎng)站優(yōu)化(SEO優(yōu)化)、微網(wǎng)站、主機(jī)域名等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了很多網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)絡(luò)營銷經(jīng)驗,集策劃、開發(fā)、設(shè)計、營銷、管理等網(wǎng)站化運(yùn)作于一體,具備承接各種規(guī)模類型的網(wǎng)站建設(shè)項目的能力。
編譯過程課分為下列幾個過程
編譯C程序涉及很多多步驟,第一步稱之為預(yù)處理階段,C預(yù)處理器在源代碼編譯之前對其進(jìn)行一些文本性質(zhì)的操作。
注釋的刪除
插入#include指令包含的文件內(nèi)容,定義和替換#include指令定義的符號以及確定代碼的部分是否應(yīng)該根據(jù)一些條件編譯指令進(jìn)行編譯。
在此階段完成后,*.c文件將變成*.i
第二步,便是編譯
把用高級程序設(shè)計語言書寫的源程序,翻譯成等價的計算機(jī)匯編語言或機(jī)器語言書寫的目標(biāo)程序的翻譯程序。
在次步驟完成后,*.i文件就變成了*.s
第三步,就是匯編
因為電腦只讀的懂匯編語言或者機(jī)器語言,看不懂源代碼的。
匯編代碼:匯編語言編寫的程序,機(jī)器不能直接識別,要由一種程序?qū)R編語言翻譯成機(jī)器語言,這種起翻譯作用的程序叫匯編程序,匯編程序是系統(tǒng)軟件中語言處理系統(tǒng)軟件。
在次步驟完成后,*.s文件就變成了*.o
第四步,便是鏈接
通過調(diào)用鏈接器來鏈接程序運(yùn)行需要的一大堆目標(biāo)文件,以及所依賴的其它庫文件,最后生成可執(zhí)行文件。
還有很多值得注意的地方,想深入的同學(xué)建議大家去看看 《C語言深度剖析》