導航:首頁 > 源碼編譯 > c源程序編譯形成的二進制

c源程序編譯形成的二進制

發布時間:2024-10-15 18:14:03

編譯時轉化成二進制代碼,需要藉助一定的語法嗎這語法是什麼知識領域里的

機器語言01代碼,有很多種的。

有很多種的 CPU,各有各的機器語言。
機器語言,都是 CPU 廠家規定的。

把 C 語言轉換成機器語言,也有很多種編譯軟體。
這些編譯軟體,有的是由 CPU 廠家編寫的,也有第三方軟體公司編寫的。

進行編譯的時候,都要依據 CPU 廠家規定的機器語言。
編譯後,只能在指定的 CPU 上運行。

想學機器語言,可以從《計算機系統結構》、《組成原理》入手。
網上有電子書。

⑵ C語言源程序文件名的後綴是.OBJ,經過編譯後,生成文件的後綴是什麼經過連接後,生成文件的後綴是什麼

C語言源程序文件名的後綴是.c。C源程序經過C編譯程序編譯之後生成一個後綴為.OBJ的二進制文件,

然後由稱為「連接程序」的軟體,把此.OBJ文件與C語言提供的各種庫函數連接起來生成一個後綴為.EXE的可執行文件。

由高級語言編寫的程序稱為「源程序」,把由二進制代碼表示的程序稱為「目標程序」。為了把源程序轉換成機器能接受的目標程序,這時我們需要具有翻譯功能的軟體--「編譯程序」。每種高級語言都有與它對應的編譯程序。

(2)c源程序編譯形成的二進制擴展閱讀

1、目標文件的擴展名為「.obj」(Windows)或「.o」(Linux)。目標文件已經是機器指令,但還不能運行,因為目標文件還沒有解決函數調用問題。

2、可執行文件的擴展名為「.exe「。

⑶ C/C++語言編譯生產可執行的二進制文件的過程求大神詳盡解釋,

  1. 預編譯。編譯器將你的.c、.cpp源代碼,通過解釋其中的預編譯指令,將源代碼轉換成相應的沒有任何預編譯指令的代碼。

  2. 編譯、優化。將上一步的代碼編譯成匯編指令,並作一定優化,形成對應的.s匯編代碼

  3. 匯編。將.s文件匯編成機器碼,形成對應的.o目標文件,此時是不可執行的二進制文件。生成對應的清單文件。為了連接需要,還會生成未定向符號表、導出符號表、地址重定向表等等。

  4. 連接。先根據對應的清單文件、連接文件及之間的調用關系,決定所有的目標文件及引用的庫文件在最後可執行文件中的位置;然後做一些其他事情,比如根據符號表等將目標文件中的符號地址補全等等;最終得到可執行文件。

這只是我個人的簡單理解,更詳盡的解答都可以寫成好幾本書了=_=望採納~

⑷ C源程序經編譯形成的二進制代碼可以直接運行嗎

不可以直接運行,源程序是程序員寫給人看的,電腦執行的都是.EXE程序或者是二進制可執行代碼,所以得將源程序進行編譯連接然後才能生成可執行的程序也就是二進制的代碼。

源代碼(也稱源程序)是指未編譯的按照一定的程序設計語言規范書寫的文本文件,是一系列人類可讀的計算機語言指令。

在現代程序語言中,源代碼可以是以書籍或者磁帶的形式出現,但最為常用的格式是文本文件,這種典型格式的目的是為了編譯出計算機程序。

計算機源代碼的最終目的是將人類可讀的文本翻譯成為計算機可以執行的二進制指令,這種過程叫做編譯,通過編譯器完成。

(4)c源程序編譯形成的二進制擴展閱讀:

如果按照源代碼類型區分軟體,通常被分為兩類:自由軟體和非自由軟體。自由軟體一般是不僅可以免費得到,而且公開源代碼;相對應地,非自由軟體則是不公開源代碼。所有一切通過非正常手段獲得非自由軟體源代碼的行為都將被視為非法。

對於計算機而言,並不存在真正意義上的「好」的源代碼;然而作為一個人,好的書寫習慣將決定源代碼的好壞。源代碼是否具有可讀性,成為好壞的重要標准。軟體文檔則是表明可讀性的關鍵。

對軟體進行說明,即對軟體的編寫進行說明。為數不少的初學者,甚至少數有經驗的程序員都忽視軟體說明的編寫,因為這部分不會在生成的程序中直接顯示,也不參與編譯。

但是注釋代碼對軟體的學習、分享、維護和軟體復用都有巨大的好處。因此,書寫軟體說明在業界被認為是能創造優秀程序的良好習慣,一些公司也硬性規定必須書寫。

網路-源代碼 (一系列人類可讀的計算機語言指令)

⑸ C語言採用解釋方式將源程序轉換為二進制的目標代碼嗎

不是,C語言採用編譯方式將源程序轉換為二進制的目標代碼。使用C語言編譯器來完成。

所謂C語言編譯器,就是把編程得到的文件,比如.c,.h的文件,進行讀取,並對內容進行分析,按照C語言的規則,將其轉換成cpu可以執行的二進制文件。其本質在於對文件的讀入,分析,及處理。

C語言編寫的程序代碼稱為源程序,對於計算機本身來說,它並不能直接識別由高級語言編寫的程序。C語言程序經C語言編譯程序編譯後,生成後綴為.obj的二進制文件(稱為目標文件)。

此.obj文件必須與系統提供的各種庫函數連接起來生成一個後綴為.exe的可執行文件才可以執行。C語言的可執行文件由一系列機器指令構成的。

(5)c源程序編譯形成的二進制擴展閱讀

解釋執行和編譯執行是計算機語言的執行方式。解釋執行由解釋器現場解釋執行,不生成目標程序。如BASIC便是解釋執行,一般解釋執行效率較低,低於編譯執行。

編譯執行由編譯程序將目標代碼一次性編譯成目標程序,再由機器運行目標程序。如:PASCAL,C,C++,delphi等語言。效率高於解釋執行。

⑹ c語言源程序的擴展名是

c語言源程序的擴展名是.c。由c語言構成的指令序列稱為c源程序,源程序文件的後綴為「.c」;源程序經過c編譯程序編譯生成後綴為「.obj」的二進制文件(稱為目標文件)。因此擴展名是.c。python是一種面向對象的解釋型計算機程序設計語言,由荷蘭人GuidovanRossum於1989年發明,第一個公開發行版發行於1991年。Python通常應用於各種領域,是一種通用語言,無論是從網站、游戲開發、機器人,人工智慧,大數據,雲計算或是一些高科技的太空梭控制都可以用到python語言。

⑺ 請問c語言的源程序被編譯後的代碼是機器碼嗎

首先語言和被編譯成的代碼沒有直接關系。有把Java編譯成機器碼的編譯器也有把C語言編譯成Java位元組碼的編譯器。

機器碼只是CPU直接認讀的編碼,不等於和硬體打交道的。操作硬體是你通過程序操作CPU做到的。操作系統只不過是別人寫的程序而已,說到底還是程序。

閱讀全文

與c源程序編譯形成的二進制相關的資料

熱點內容
s點b點主圖源碼 瀏覽:432
電腦可以刪除的臨時文件夾 瀏覽:7
小杜app上怎麼啟用 瀏覽:305
為什麼伺服器喇叭喊了一次就不行 瀏覽:480
phpdbo驅動 瀏覽:255
程序員尋找轉行建議 瀏覽:632
psgrepjava 瀏覽:415
夢幻誅仙12職業變態源碼 瀏覽:370
汽車的控制是怎麼編程的 瀏覽:686
穩定的ip地址伺服器 瀏覽:641
python多線程編程教程 瀏覽:252
筆記本編程電腦排行榜 瀏覽:32
微信好友緩存文件在哪個文件夾 瀏覽:614
javafloat小數點後兩位小數 瀏覽:166
澳門pdf 瀏覽:409
es解壓文件默認路徑 瀏覽:833
jar命令war包 瀏覽:121
福州交警app預約在哪裡簽字確認 瀏覽:623
android各版本sdk異同 瀏覽:726
怎樣在源碼中找精靈圖片 瀏覽:445