當前位置:首頁 » 編程語言 » c高級語言怎麼變成目的程序
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c高級語言怎麼變成目的程序

發布時間: 2023-02-23 03:58:42

① 高級語言編寫的程序轉換為計算機能直接執行的目標程序,必須經過A編輯B編譯C匯編

高級語言編寫的程序轉換為計算機能直接執行的目標程序,必須經過編譯,此題選B。

(1)c高級語言怎麼變成目的程序擴展閱讀:

編譯方式是指利用事先編好的一個稱為編譯程序的機器語言程序,作為系統軟體存放在計算機內,當用戶將高級語言編寫的源程序輸入計算機後,編譯程序便把源程序整個地翻譯成用機器語言表示的與之等價的目標程序。

然後計算機再執行該目標程序,以完成源程序要處理的運算並取得結果。解釋方式是指源程序進入計算機後,解釋程序邊掃描邊解釋,逐句輸入逐句翻譯,計算機一句句執行,並不產生目標程序。

利用編譯程序從源語言編寫的源程序產生目標程序的過程。 用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。

編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。

參考資料來源:網路-編譯

參考資料來源:網路-高級語言

② 能將高級語言編寫的源程序轉換為目標程序的是什麼

把源程序轉換為目標程序的過程叫編譯

所以能將高級語言編寫的源程序轉換為目標程序的是相應的高級語言編譯程序

故答案為C—編譯程序

拓展資料:

編譯程序也稱為編譯器,是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。編譯程序屬於採用生成性實現途徑實現的翻譯程序。它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。

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

本題正確答案應為B選項。

C選項為錯誤答案。

原因如下:

1、編譯程序僅僅是將源語言編寫的源程序轉換為目標程序。

2、編譯是把高級語言變成計算機可以識別的2進制語言。

3、編譯程序把一個源程序翻譯成目標程序的工作過程分為五個階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優化;目標代碼生成。

顯然,編譯的過程中並沒有運行程序輸出結果的步驟,編譯的結果是生成目標文件(代碼)。

因此C選項為錯誤答案,B選項為正確答案。

編譯原理圖如下:

(3)c高級語言怎麼變成目的程序擴展閱讀:

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

1、 可以立即執行的機器語言代碼,所有地址都重定位;

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

3、匯編語言代碼,須經過匯編程序匯編後,成為可執行的機器語言代碼。

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

參考資料:

編譯_網路

④ 高級語言編寫的源程序需經什麼程序翻譯成目標程序,計算機才能執行

一般高級語言例如c語言需要如下步驟才能執行:

第一個階段是預處理階段,在正式的編譯階段之前進行。預處理階段將根據已放置在文件中的預處理指令來修改源文件的內容。如#include指令就是一個預處理指令,它把頭文件的內容添加到.cpp文件中。

第二個階段編譯、優化階段,將其翻譯成等價的中間代碼表示或匯編代碼,並執行優化。

第三個階段是匯編,把匯編語言代碼翻譯成目標機器指令。

第四個階段是鏈接,例如,某個源文件中的函數可能引用了另一個源文件中定義的某個符號(如變數或者函數調用等);在程序中可能調用了某個庫文件中的函數,等等。所有的這些問題,都需要經鏈接程序的處理方能得以解決。

⑤ 21.把高級語言的源程序變為目標程序要經過 ______。 A.匯編 B.解釋 C.編輯 D.編譯 22.解釋程序的功

D 編譯。
編譯程序、解釋程序、匯編程序是3種語言處理程序。其區別主要為:匯編程序(為低級服務)是將匯編語言書寫的源程序翻譯成由機器指令和其他信息組成的目標程序。解釋程序(為高級服務)直接執行源程序或源程序的內部形式,一般是讀一句源程序,翻譯一句,執行一句,不產生目標代碼,如BASIC解釋程序。編譯程序(為高級服務)是將高級語言書寫的源程序翻譯成與之等價的低級語言的目標程序。編譯程序與解釋程序最大的區別之一在於前者生成目標代碼,而後者不生成;此外,前者產生的目標代碼的執行速度比解釋程序的執行速度要快;後者人機交互好,適於初學者使用。用COBOL、FORTRAN等語言編寫的程序考慮到執行速度一般都是編譯執行。

⑥ 能將高級語言編寫的源程序轉換為目標程序的是

是編譯程序。

編譯程序是指把用高級程序設計語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序。編譯程序屬於採用生成性實現途徑實現的翻譯程序。

它以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出。

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

(6)c高級語言怎麼變成目的程序擴展閱讀:

特點:

編譯程序必須分析源程序,然後綜合成目標程序。首先,檢查源程序的正確性,並把它分解成若干基本成分;其次,再根據這些基本成分建立相應等價的目標程序部分。

為了完成這些工作,編譯程序要在分析階段建立一些表格,改造源程序為中間語言形式,以便在分析和綜合時易於引用和加工。

數據結構分析和綜合時所用的主要數據結構,包括符號表、常數表和中間語言程序。符號表由源程序中所用的標識符連同它們的屬性組成,其中屬性包括種類(如變數、數組、結構、函數、過程等)、類型(如整型、實型、字元串、復型、標號等),以及目標程序所需的其他信息。

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

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

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

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

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

(7)c高級語言怎麼變成目的程序擴展閱讀

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

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

⑧ 把高級語言編寫的源程序轉換為可執行程序的過程叫什麼

這個過程有兩個叫法,編譯或者解釋。
有些高級語言在把源程序轉換為可執行程序的時候,需要先對完整的源程序做詞法分析、語法分析等一系列檢測,所有語法都沒有問題後,一次性把所有源代碼翻譯成機器碼,這要求源程序中不能有任何語法錯誤,否則將不會生成可執行程序,直到所有語法錯誤都改正,這種轉換的方式稱為編譯,C、C++等語言就是採用了編譯方式。
還有些高級語言在把源程序轉換為可執行程序的時候,一句話一句話的轉換,翻譯一行執行一行,如果遇到某一行出現了語法錯誤,程序將停止在出現錯誤的地方,程序員可以修改,然後繼續執行,這種轉換方式稱為解釋,VB、早期的Java都是採用解釋方式。
兩種方式各有利弊,編譯的方式對於程序員要求較高,源代碼中不能出現任何錯誤,最終的程序才能執行,但一旦通過了編譯,則生成的可執行代碼執行效率會很高;而解釋方式可以邊寫代碼邊調試,但執行的效率較低。

⑨ 由高級語言編寫的源程序要轉成計算機能直接執行的目標程序,必須經過A、編輯或執行 B、編譯或解釋 C、匯編

b是正確的
d是不對的,解釋性的中間文件並不是計算機能直接執行的,而是解釋器能直接執行的