2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、程序是怎么從代碼到執(zhí)行的電子計算機所使用的是由“0”和“1”組成的二進制數(shù),二進制是計算機的語言的基礎。人們只能寫出一串串由“0”和“1”組成的指令序列交由計算機執(zhí)行,這種語言,就是機器語言。但是人為編制機器語言繁雜單調,而且容易出錯。于是為了減輕使用機器語言編程的痛苦,人們發(fā)明匯編語言。匯編語言用一些簡潔的英文字母、符號串來替代一個特定的指令的二進制串,比如用“ADD”代表加法,“MOV”代表數(shù)據(jù)傳遞等等,這樣一來,人們很容易讀懂并理

2、解程序在干什么,糾錯及維護都變得方便了。然而計算機是不認識這些符號的,這就需要一個專門的程序,專門負責將這些符號翻譯成二進制數(shù)的機器語言,這種翻譯程序被稱為匯編程序。匯編指令和機器語言之間有著一一對應的關系,程序可以很容易把它編為計算機能夠識別的機器語言。像cc,pythen等這一類語言為高級語言,它偏向人,是按照人的思維方式設計的,機器看不懂高級語言,必須要有一個橋梁來銜接兩者。如圖:于是CC這樣的語言無法直接都讀出,需要經(jīng)過編譯成計

3、算機可執(zhí)行代碼。編譯是將源代碼轉換為機器可認識代碼的過程,大致分為源程序編譯預處理編譯優(yōu)化程序匯編程序鏈接程序可執(zhí)行文件。這個過程大致分為以下幾個步驟:1.編譯預處理預處理就是編譯程序讀取源程序進行詞法和語法的分析,將高級語言指令轉換為功能等效的匯編代碼。編譯器讀取c源程序,對其中的偽指令(以#開頭的指令)和特殊符號進行處理。偽指令主要包括以下四個方面:(1)宏定義指令,如#defineNameTokenString#undef等。對于

4、前一個偽指令,預編譯所要作得的是將程序中的所有Name用TokenString替換,但作為字符串常量的Name則不被替換。對于后者,則將取消對某個宏的定義,使以后該串的出現(xiàn)不再被替換。(2)條件編譯指令,如#ifdef#ifndef#else#elif#endif等等。這些偽指令的引入使得程序員可以通過定義不同的宏來決定編譯程序對哪些代碼進行處理。預編譯程序將根據(jù)有關的文件,將那些不必要的代碼過濾掉。(3)頭文件包含指令,如#inclu

5、de“FileName“或者#include等。采用頭文件的目的主要是為了使某些定義可以供多個不同的源程序使用。因為在需要用到這些定義的源程序中,只需加上一條#include語句即可,而不必再在此文件中將這些定義重復一遍。預編譯程序將把頭文件中的定義統(tǒng)統(tǒng)都加入到它所產(chǎn)生的輸出文件中,以供編譯程序對之進行處理。(4)特殊符號,預編譯程序可以識別一些特殊的符號。例如在源程序中出現(xiàn)的LINE標識將被解釋為當前行號(十進制數(shù)),F(xiàn)ILE則被解釋

6、為當前被編譯的C源程序的名稱。預編譯程序對于在源程序中出現(xiàn)的這些串將用合適的值進行替換。經(jīng)過替換,生成一個沒有宏定義、沒有條件編譯指令、沒有特殊符號的輸出文件。這個文件的含義同沒有經(jīng)過預處理的源文件是相同的,但內(nèi)容有所不同。2.編譯階段經(jīng)過預編譯得到的輸出文件中,將只有常量。如數(shù)字、字符串、變量的定義,以及Cusingnamespacestdintmain()cout“hellowld“endlreturn0編譯:.386.modelf

7、latstdcalloptioncasemap:noneincludewindows.incincludeuser32.incincludelibuser32.libincludekernel32.incincludelibkernel32.lib.dataszCaptiondbAMessageBox!0szTextdbHelloWld!0.codestart:invokeMessageBoxNULLoffsetszTextoffset

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論