人妻系列无码专区av在线,国内精品久久久久久婷婷,久草视频在线播放,精品国产线拍大陆久久尤物

當前位置:首頁 > 前端設計 > 正文

c程序設計語言采用編譯程序翻譯(算法的五個特性)

c程序設計語言采用編譯程序翻譯(算法的五個特性)

各位老鐵們好,相信很多人對c程序設計語言采用編譯程序翻譯都不是特別的了解,因此呢,今天就來為大家分享下關于c程序設計語言采用編譯程序翻譯以及算法的五個特性的問題知識,還...

各位老鐵們好,相信很多人對c程序設計語言采用編譯程序翻譯都不是特別的了解,因此呢,今天就來為大家分享下關于c程序設計語言采用編譯程序翻譯以及算法的五個特性的問題知識,還望可以幫助大家,解決大家的一些困惑,下面一起來看看吧!

c語言編譯系統(tǒng)是什么系統(tǒng)

C語言編譯系統(tǒng)指的是“編譯程序”,也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。

編譯程序屬于采用生成性實現(xiàn)途徑實現(xiàn)的翻譯程序。它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。

編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數(shù)據,算出所需的計算結果。

為什么說c是編譯型語言

1、C語言不能被計算機直接理解,需要編譯后才能執(zhí)行。

2、計算機不能直接理解高級語言,只能直接理解機器語言,所以必須要把高級語言翻譯成機器語言,計算機才能執(zhí)行高級語言編寫的程序。

3、編譯型語言寫的程序執(zhí)行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以后要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執(zhí)行效率高。

c語言編譯程序本質是

編譯程序的本質就是把程序員員容易理解的高級語言程序代碼流翻譯成計算機可執(zhí)行的機器指令代碼流。

把函數(shù)程序文本字符串流中的算術表達式、賦值語句、控制語句等翻譯成為計算機機器語言二進制代碼流。把翻譯后的二進制代碼流,明確數(shù)據空間地址和大小,生成計算機裸機或操作系統(tǒng)可以執(zhí)行目標代碼。

用C語言編寫的源文件經過編譯,若沒有產生編譯錯誤,則系統(tǒng)將( )

答案是錯誤的,系統(tǒng)將生成目標文件,選B。因為C語言中編譯程序是把一個源程序翻譯成目標程序的工作過程。這一過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優(yōu)化;目標代碼生成。在語法分析過程中發(fā)現(xiàn)有語法錯誤,給出提示信息,沒有錯誤則生成目標文件。C語言通過匯編把匯編語言代碼翻譯成目標機器指令。對于被翻譯系統(tǒng)處理的每一個C語言源程序,都將最終經過這一處理而得到相應的目標文件。目標文件中所存放的也就是與源程序等效的目標的機器語言代碼。擴展資料C語言的源文件成為目標文件的過程:

1、源文件經過預處理,生成.i的文件(預處理器cpp)。

2、將預處理后的文件轉換成匯編語言,生成文件.s文件。

3、從匯編變?yōu)槟繕舜a(機器代碼)生成.o(.obj)的文件(匯編器as)。

4、連接目標代碼,生成可執(zhí)行程序(連接器ld)。

c語言源程序文件經過連接后生成文件的擴展名是什么

選擇C.”.exe“

解析如下:

文件編輯的時候源碼是CPP擴展名,C++頭文件是.H擴展名。編譯源程序文件轉換成.obj擴展名的目標文件。鏈接將一個或多個目標文件與程序用到的庫文件鏈拉起來,形成一個可以在操作系統(tǒng)直接運行的執(zhí)行程序.exe。

也就是整個過程分為:預編譯,對源代碼的宏進行替換,生成中間文件(文本,默認不保留)》》翻譯為匯編代碼(文本,默認不保留)》》由匯編器生成二進制文件(.obj)》》連接為可執(zhí)行文件(.exe)。

擴展資料

一、編譯

目標代碼生成是編譯的最后一個階段。目標代碼生成器把語法分析后或優(yōu)化后的中間代碼變換成目標代碼。目標代碼有三種形式:

①可以立即執(zhí)行的機器語言代碼,所有地址都重定位;

②待裝配的機器語言模塊,當需要執(zhí)行時,由連接裝入程序把它們和某些運行程序連接起來,轉換成能執(zhí)行的機器語言代碼;

③匯編語言代碼,須經過匯編程序匯編后,成為可執(zhí)行的機器語言代碼。

目標代碼生成階段應考慮直接影響到目標代碼速度的三個問題:一是如何生成較短的目標代碼;二是如何充分利用計算機中的寄存器,減少目標代碼訪問存儲單元的次數(shù);三是如何充分利用計算機指令系統(tǒng)的特點,以提高目標代碼的質量。

二、高級程序設計語言C

程序的編譯

編譯是指將編輯好的源文件翻譯成二進制目標代碼的過程。編譯過程是由編譯程序(編譯器)完成的。不同操作系統(tǒng)下的各種編譯器的使用命令不完全相同,使用時應注意計算機環(huán)境。編譯時,編譯器首先要對源程序中的每一個語句檢查語法錯誤,當發(fā)現(xiàn)錯誤時,就在屏幕上顯示錯誤的位置和錯誤類型的信息。

此時,要再次調用編輯器進行查錯修改。然后,再進行編譯,直至排除所有語法和語義錯誤。正確的源程序文件經過編譯后在磁盤上生成目標文件(后綴名為.obj的文件)。程序的連接

編譯后產生的目標文件是可重定位的程序模塊,不能直接運行。連接就是把目標文件和其他必需的目標程序模塊(這些目標程序模塊是分別編譯而生成的目標文件)以及系統(tǒng)提供的標準庫函數(shù)連接在一起,生成可以運行的可執(zhí)行文件的過程。連接過程使用C語言提供的連接程序(連接器)完成,生成的可執(zhí)行文件(后綴名為.exe的文件)存到磁盤中。

程序的運行

程序經過連接生成可執(zhí)行文件后,就可以在操作系統(tǒng)控制下運行.若執(zhí)行程序后達到預期目的,則C程序的開發(fā)工作到此完成.否則,要進一步檢查修改源程序,重復編輯-編譯-連接-運行的過程,直到取得預期結果為止。

關于本次c程序設計語言采用編譯程序翻譯和算法的五個特性的問題分享到這里就結束了,如果解決了您的問題,我們非常高興。