什麽是編譯器(編程軟件)?

時間:2020-10-23 作者:管理員(yuán) 點擊:637

總的來說,你所謂的編程語言其實就是軟件,叫做編譯器,它讀取文本文件,做了許多處理,并生(shēng)成二進制文件。大(dà)白(bái)話(huà)的講,就是負責“翻譯”或“解釋”代碼的一(yī)個軟件!

編譯器可以是任何一(yī)個能将一(yī)個文本翻譯爲另一(yī)個文本的程序。比如C語言、C++這樣的程序,當我(wǒ)(wǒ)們一(yī)行一(yī)行寫下(xià)代碼後,需要經過編譯器的“翻譯”才能變成可執行程序才可以執行。才可以實現代碼到程序的轉變,而這一(yī)切都需要編譯器幫我(wǒ)(wǒ)們去(qù)做。

編譯器做了什麽?
簡單來說,編譯器讀取源代碼生(shēng)成二進制文件。由于直接将複雜(zá)的、人類可讀的代碼轉爲一(yī)和零是非常複雜(zá)的,編譯器在程序可運行前有幾個步驟要做:

讀取你給它的源代碼中(zhōng)的獨立字符。

将字符分(fēn)類爲字,數字,符号和操作符。

獲取已排序完的字符,并通過将它們與模式匹配相匹配和生(shēng)成操作樹(shù)來确定它們嘗試進行的操作。

叠代上一(yī)步中(zhōng)生(shēng)成操作樹(shù)中(zhōng)的每一(yī)個操作,并生(shēng)成等效的二進制文件。

當我(wǒ)(wǒ)說編譯器立刻從一(yī)個操作樹(shù)轉化到二進制文件時,它實際生(shēng)成了彙編代碼,彙編代碼随後被彙編/編譯成二進制文件。彙編像是更高級的,人類可讀的二進制文件。

那麽問題來了,我(wǒ)(wǒ)們學編程,比如C語言,又(yòu)是32個關鍵字、又(yòu)是各種函數,還有各種語法,學這些不就爲了寫代碼讓電(diàn)腦執行嗎(ma)?爲什麽還要編譯器“翻譯”呢?

答案很簡單,因爲:電(diàn)腦(其實主要就是CPU)隻認識0或1這兩個數字。所有寫的一(yī)切代碼,都需要編譯器幫我(wǒ)(wǒ)們編譯也就是翻譯成大(dà)量的01代碼,才是CPU的“母語”,CPU才會熟練的幫我(wǒ)(wǒ)們飛一(yī)般的幫速度執行。

那麽你可能又(yòu)會問,既然CPU隻認識0和1,反正也要翻譯一(yī)遍,那我(wǒ)(wǒ)們還學什麽編程,學什麽語法,直接用漢語寫命令寫代碼不行嗎(ma)?

答案是:當然可以,比如易語言,或号稱一(yī)句話(huà)就可以完成一(yī)個功能的swift語言等等。

無論哪種語言,想要最終成爲可執行的程序,都需要編譯器幫我(wǒ)(wǒ)們去(qù)編譯才可以實現! 無非是語言的高級與否,影響編譯器翻譯量多少而已!源碼要運行,必須先轉成二進制的機器碼。

以C語言爲例,常見的編譯器有:

Windows系統下(xià)VC/VS系列編譯器爲cl.exe

Linux系統下(xià)原生(shēng)自帶的gcc編譯器

Max系統下(xià)的LLVM/CLANG編譯器

這些編譯器的使用方式常常在DOS或命令提示符下(xià),通過一(yī)步步的命令進行操作,需要經過編譯、鏈接才會生(shēng)成對應的可執行文件

什麽是IDE(集成開(kāi)發環境)?
簡單講,就是比編譯器功能更全面更強大(dà)界面更友好的軟件

我(wǒ)(wǒ)們實際學習和開(kāi)發過程中(zhōng)大(dà)家聽(tīng)到或見過的基本都是IDE(集成開(kāi)發環境),比如VC6.0、VS2012、CodeBlocks等等,他們的核心還是前面提到的編譯器,隻不過爲了大(dà)家方便,全部免去(qù)命令形式的操作,取而代之的友好的界面,一(yī)鍵編譯等方便的操作,還額外(wài)提供包括代碼高亮、代碼調試、項目管理等高級功能

常見的編譯器有:

TurboC2.0

VC6.0

VS系列(比如VS2012)

CodeBlocks

DevCpp

C-Free

等等
返回列表
在線溝通

Are you interested in ?

感興趣嗎(ma)?

有關我(wǒ)(wǒ)們服務的更多信息,請聯系

136 7365 2363(同微信) 13140187702

鄭州網站建設鄭州網站設計鄭州網站制作鄭州建站公司鄭州網站優化--聯系索騰

與我(wǒ)(wǒ)們合作

鄭州網站建設鄭州網站設計鄭州網站制作鄭州建站公司鄭州網站優化--與索騰合作,您将會得到更成熟、專業的網絡建設服務。我(wǒ)(wǒ)們以客戶至上,同時也相互挑戰,力求呈現最好的品牌建設成果。

業務咨詢熱線:

136 7365 2363

TOP

QQ客服

在線留言