導航:首頁 > 源碼編譯 > 代碼編譯後變成什麼可執行

代碼編譯後變成什麼可執行

發布時間:2023-08-14 06:27:53

⑴ 在c語言中「可執行程序」是什麼意思

C語言中的可執行程序就是將用文本信息表示的程序翻譯成計算機認識的二進制代碼串。

首先,我們先用C語言把源代碼寫好,然後交給C語言編譯器。C語言編譯器內部分為前端和後端。

(1)編譯器前端

前端負責將C語言代碼進行詞法和語法上的解析,然後可以生成中間代碼。

中間代碼這部分不是必須的,但是它能夠為程序的跨平台移植帶來諸多好處。比如,同樣的一份C語言源代碼在一台計算機上編譯完之後,生成一套中間代碼。

然後針對不同的目標平台(比如要將這一套代碼分別編譯成 ARM 處理器的二進制機器碼、MIPS 處理器的二進制機器碼以及 x86 處理器的二進制機器碼),只需要編寫相應目標平台的編譯器後端即可。

所以,這么做就可以把編譯器的前端與後端剝離開來(這在軟體工程上又可稱為解耦合),不同處理器廠商可以針對自家的處理器特性,對中間代碼生成到目標二進制代碼的過程再度進行優化。

(2)編譯器後端

接下來,由C語言編譯器後端生成源文件相應的目標文件。

目標文件在 Windows 系統上往往是.obj文件,而在 Unix/Linux 系統上往往是.o文件,C語言的源文件在所有平台上都統一用.c文件表示。

(3)鏈接器

最後,對於各個獨立的目標文件,通過連接器將它們合並成一個最終可執行文件。

(1)代碼編譯後變成什麼可執行擴展閱讀:

起初,C語言沒有官方標准。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。

這本書被 C語言開發者們稱為K&R,很多年來被當作 C語言的非正式的標准說明。人們稱這個版本的 C語言為K&R C。

K&R C主要介紹了以下特色:

結構體(struct)類型

長整數(long int)類型

無符號整數(unsigned int)類型

把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產生混淆。

即使在後來ANSI C標准被提出的許多年後,K&R C仍然是許多編譯器的最 准要求,許多老舊的編譯器仍然運行K&R C的標准。

1970到80年代,C語言被廣泛應用,從大型主機到小型微機,也衍生了C語言的很多不同版本。

1983年,美國國家標准協會(ANSI)成立了一個委員會X3J11,來制定 C語言標准。

1989年,美國國家標准協會(ANSI)通過了C語言標准,被稱為ANSI X3.159-1989 "Programming Language C"。因為這個標準是1989年通過的,所以一般簡稱C89標准。有些人也簡稱ANSI C,因為這個標準是美國國家標准協會(ANSI)發布的。

1990年,國際標准化組織(ISO)和國際電工委員會(IEC)把C89標準定為C語言的國際標准,命名為ISO/IEC 9899:1990 - Programming languages -- C 。因為此標準是在1990年發布的,所以有些人把簡稱作C90標准。不過大多數人依然稱之為C89標准,因為此標准與ANSI C89標准完全等同。

1994年,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994 ,有些人簡稱為C94標准。

1995年,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity ,有些人簡稱為C95標准。

C99標准

1999年1月,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C語言的新標准,名叫ISO/IEC 9899:1999 - Programming languages -- C ,簡稱C99標准。這是C語言的第二個官方標准。

參考資料:網路-c語言

⑵ 一個編譯生成的可執行程序是用什麼命令執行

預編譯( 生成 hello.i 文件) 預編譯的處理規則:1. 將所有的 「#define」 刪除,並展開所有的宏定義。 2. 處理所有的條件
2. 編譯(生成匯編代碼 hello.s) 編譯過程是編譯器gcc把預處理完的文件進行詞法分析、語法分析、語義分析及優化後生成相應的匯編代碼文件。編譯過程可以使用如下命令
3. 匯編(生成hello.o文件)匯編是 匯編器as

⑶ 程序編譯鏈接後形成的可執行文件是什麼文件

xxxx.exe可以執行文件

⑷ 如何將自己編寫好的代碼弄成應用軟體啊

你需要的是編譯器,比如TurboC,MSC,或者VC等等,你寫的C代碼只是源程序而已,需要經過C編譯器編譯成可執行的EXE文件。C編譯器有很多,上面提到的就是比較常用的,至於編譯器的使用,你得另查一查使用手冊,一般而言,編搭胡譯器都帶有IDE的集成編程環境慧螞,可以作為程序的編輯器(別把編輯器和編譯器弄混了,編輯器就是可以輸入源代碼的軟體工具,如記事本就是一個最簡單的編輯器,編譯器就是用於編譯特定語言源代碼的軟體),然後一般都有一個編譯(Compile)按鈕(或者編譯命令),編譯時編譯器會檢查你的源代碼是知碧攔否有語法錯誤,如果沒有錯誤,還會使用鏈接(Link)工具將你的程序鏈接成為可執行的Exe文件,至此,你的源程序就成了可運行的程序了。

運行EXE文件是不用源代碼的,它與編寫程序的語言無關,各種編程語言寫成的源程序經過該編程語言的編譯器可以被編譯成在計算機上可以被運行的執行程序。


⑸ 源程序TEST.C經編譯產生的目標文件和連接後產生的可執行文件是什麼

編譯就是把C代碼轉換成CPU可執行的機器指令,每個.c文件生成一個.obj文件。
鏈接就是把生成的(多個)
.obj
文件及用到的庫文件(.lib)一起組合生成可執行文件(.exe)。

⑹ 如何將編寫好的C語言源程序變成可執行文件EXE

1、第一步,打開C語言編譯軟體,輸入你要執行的程序源代碼,如下圖所示。

閱讀全文

與代碼編譯後變成什麼可執行相關的資料

熱點內容
安卓怎麼用支付寶交違章罰款 瀏覽:663
php面向對象的程序設計 瀏覽:504
數據挖掘演算法書籍推薦 瀏覽:894
投訴聯通用什麼app 瀏覽:150
web伺服器變更ip地址 瀏覽:954
java正則表達式驗證郵箱 瀏覽:360
成熟商務男裝下載什麼軟體app 瀏覽:609
加密2h代表長度是多少厘米 瀏覽:23
拍賣程序員 瀏覽:101
電腦的圖片放在哪個文件夾 瀏覽:274
unsignedintjava 瀏覽:216
編譯器下載地址 瀏覽:42
什麼是面對對象編程 瀏覽:708
b站伺服器什麼時候恢復 瀏覽:721
6p相當於安卓機什麼水準 瀏覽:498
能否給隱藏相冊加密 瀏覽:597
糖心app改什麼名 瀏覽:824
戰地1控伺服器如何部署 瀏覽:395
xp還原系統輸入命令 瀏覽:324
mysql命令行版本 瀏覽:305