[精選]計(jì)算機(jī)程序的執(zhí)行過程資料_第1頁(yè)
[精選]計(jì)算機(jī)程序的執(zhí)行過程資料_第2頁(yè)
[精選]計(jì)算機(jī)程序的執(zhí)行過程資料_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、一。計(jì)算機(jī)程序的執(zhí)行過程程序就是指令的集合為使計(jì)算機(jī)按預(yù)定要求工作,首先要編制程序。程序是一個(gè)特定的指令序列,它告訴計(jì)算機(jī)要做哪些事,按什么步驟去 做。指令是一組二進(jìn)制信息的代碼,用來(lái)表示計(jì)算機(jī)所能完成的基本操作。1 .程序程序是為求解某個(gè)特定問題而設(shè)計(jì)的指令序列。程序中的每條指令規(guī)定機(jī)器完成一組基本操作。如果把計(jì)算機(jī)完成一次 任務(wù)的過程比作樂隊(duì)的一次演奏,那么控制器就好比是一位指揮,計(jì)算機(jī)的其它功能部件就好比是各種樂器與演員,而 程序就好像是樂譜。計(jì)算機(jī)的工作過程就是執(zhí)行程序的過程,或者說(shuō),控制器是根據(jù)程序的規(guī)定對(duì)計(jì)算機(jī)實(shí)施控制的。 例如,對(duì)于算式r a+b bOiati b<0計(jì)算機(jī)

2、的解題步驟可作如下安排:步驟1 :取a ;步驟2 :取b ;步驟3:判斷;.若b>0,執(zhí)行步驟4.若bv0,執(zhí)行步驟6步驟4 :執(zhí)行a+ b;步驟5 :轉(zhuǎn)步驟7 ;步驟6 :執(zhí)行a b;步驟7 :結(jié)束。計(jì)算機(jī)的工作過程可歸結(jié)為:取指令-分析指令-執(zhí)行指令-再取下一條指令,直到程序結(jié)束的反復(fù)循環(huán)過程。通常把其中的一次循環(huán)稱為計(jì)算機(jī)的一個(gè)指令周期。總之,我們可把程序?qū)τ?jì)算機(jī)的控制歸結(jié)為每個(gè)指令周期中指令對(duì)計(jì)算 機(jī)的控制。2 指令程序是由指令組成的。指令是機(jī)器所能識(shí)別的一組編制成特定格式的代碼串,它要求機(jī)器在一個(gè)規(guī)定的時(shí)間段(指令 周期)內(nèi),完成一組特定的操作。 指令的基本格式可歸結(jié)為操作碼

3、OP和操作數(shù)地址AD兩部分,具體內(nèi)容是:指出計(jì)算機(jī)應(yīng)完成的一組操作內(nèi)容,如傳送(MOV )、加法(ADD)、減法(SUB)、輸出、停機(jī)(HLT)、條 件轉(zhuǎn)移(JZ)等。這部分稱為指令的操作碼部分。兩個(gè)操作數(shù)的地址和存放結(jié)果的地址及尋址方式。為保證程序執(zhí)行的連續(xù)性,在執(zhí)行當(dāng)前指令時(shí),還需指出下一條指令的地址。由于指令在存儲(chǔ)器中一般是順序存放的,所以只要設(shè)置一個(gè)指令指針(IP),每執(zhí)行一條指令,IP自動(dòng)加1,便自動(dòng)指出下一條指令的地址,而不必在指 令中專門指出下一條指令的地址。只有在轉(zhuǎn)移指令中才指出下一條指令的地址。此時(shí),IP的內(nèi)容將隨轉(zhuǎn)移指令所指示的內(nèi)容改變。3 指令的執(zhí)行指令規(guī)定的內(nèi)容是通過控

4、制器執(zhí)行的,或者說(shuō)控制器是按照一條指令的內(nèi)容指揮操作的??刂破鞯墓δ?定序功能保證按程序規(guī)定的順序執(zhí)行指令。 定時(shí)功能一一計(jì)算機(jī)處理信息是通過信息在計(jì)算機(jī)的邏輯電路中的流通完成的。為保證計(jì)算機(jī)工作的準(zhǔn)確性,控 制器要為計(jì)算機(jī) 中的各部件提供統(tǒng)一節(jié)拍,使各條指令及組成每條指令的各基本操作(通常稱為微操作)都嚴(yán)格地按 精品文檔規(guī)定的時(shí)間有條不紊地自動(dòng)執(zhí)行。 操作控制功能一一控制器應(yīng)能按照指令規(guī)定的內(nèi)容,在相應(yīng)的節(jié)拍向有關(guān)部件發(fā)出操作控制信號(hào)。控制器的組成在控制器中,上述功能分別由指令部件、時(shí)序部件和操作控制部件來(lái)完成。它們的組成如圖1-8所示操作控制信號(hào)地址單元 指令部件:指令部件的主要功能是取指

5、令和分析指令。它由指令指針I(yè)P (也叫指令計(jì)數(shù)器IC或程序計(jì)數(shù)器PC)、指令寄存器IR、指令譯碼器、地址計(jì)算部件組成。其中:指令指針I(yè)P的功能是指出當(dāng)前指令的地址。它有加1功能,通常每取一條指令后自動(dòng)加1,以指出下條指令的地址。 遇到特殊情況(如轉(zhuǎn)移)可通過地址計(jì)算部件形成下一條指令的地址。指令寄存器IR保存由存儲(chǔ)器取來(lái)的指令,并分別把操作碼 0P和操作數(shù)地址AD送指令譯碼和地址計(jì)算部件。指令譯碼器也稱操作碼譯碼器。它按操作碼的內(nèi)容向操作控制部件提供相應(yīng)的操作電信號(hào)。地址計(jì)算部件的作用是對(duì)指令中地址碼進(jìn)行(變址、間址等)運(yùn)算,求出的操作數(shù)地址送存儲(chǔ)器以取出數(shù)據(jù);或者 把轉(zhuǎn)移指令中指出的下一條指

6、令地址送IP。 時(shí)序部件:時(shí)序部件也叫節(jié)拍發(fā)生器,它能為各部件提供一個(gè)時(shí)間基準(zhǔn)。時(shí)鐘頻率(如 800MHz,1GHz,2 GHz, 2.4 GHz,3 GHz-)越高,計(jì)算機(jī)的工作速度就越快。 操作控制部件:該部件的功能是根據(jù)指令譯碼器的規(guī)定內(nèi)容,在規(guī)定的節(jié)拍內(nèi)向有關(guān)部件發(fā)出操作控制信號(hào)。指令的執(zhí)行過程通常,計(jì)算機(jī)執(zhí)行一條指令的步驟如下: 把指令指針I(yè)P中的指令地址送存儲(chǔ)器,從該地址取出指令送指令寄存器IR; 地址計(jì)算部件,根據(jù)IR中的地址碼形成操作數(shù)地址送存儲(chǔ)器,從該地址取出數(shù)據(jù),送到運(yùn)算器中的寄存器(或寄 存器組); 將IR中的操作碼OP送指令譯碼器進(jìn)行譯碼; 在控制器發(fā)出的操作信號(hào)的控制

7、下,計(jì)算機(jī)各有關(guān)部件執(zhí)行操作碼OP規(guī)定的操作; 指令指針I(yè)P加1,形成下一條指令地址。如遇到轉(zhuǎn)移指令,則按轉(zhuǎn)移指令對(duì)狀態(tài)標(biāo)志寄存器測(cè)試的結(jié)果,決定是 否將轉(zhuǎn)移指令中指出的指令地址送指令指針 IP。4.計(jì)算機(jī)的解題過程要使計(jì)算機(jī)按預(yù)定要求工作,首先要編制程序。程序是一個(gè)特定的指令序列,它告訴計(jì)算機(jī)要做哪些事,按什么步驟去做。指令是一組二進(jìn)制信息的代碼,用來(lái)表示計(jì)算機(jī)所能完成的基本操作。不同的計(jì)算機(jī)所包含指令的種類和數(shù)目是 不同的,通常把一臺(tái)計(jì)算機(jī)所能執(zhí)行的各類指令的集合,稱為該機(jī)的指令系統(tǒng)。因此,在機(jī)器一級(jí)的程序設(shè)計(jì),就是按照解題要求在機(jī)器指令系統(tǒng)中選擇并有序組合解題需要的指令序列的過程。使用計(jì)

8、算機(jī)解題大致要經(jīng)過程序設(shè)計(jì) -輸入程序-執(zhí)行程序等步驟?,F(xiàn)以計(jì)算 a+ b-c為例來(lái)說(shuō)明這一過程。設(shè)a、b、c為已知的三個(gè)數(shù),分別存放在主存的 57號(hào)單元中,結(jié)果將存放在主存的8號(hào)單元。若采用單累加器結(jié)構(gòu)的 運(yùn)算器,要完成上述計(jì)算至少需要5條指令,這5條指令依次存放在主存的04號(hào)單元中,參加運(yùn)算的數(shù)也必須存放在 主存指定的單元中,主存中有關(guān)單元的內(nèi)容如圖 1-9(a)所示。運(yùn)算器的簡(jiǎn)單框圖如圖1-9(b)所示,圖中參加運(yùn)算的一個(gè) 操作數(shù)來(lái)自累加器,另一個(gè)來(lái)自主存,運(yùn)算結(jié)果則放在累加器中。圖1-9計(jì)茸趙行過程舉例計(jì)算機(jī)的控制器將控制指令的逐條、依次執(zhí)行,最終得到正確的結(jié)果。具體步驟如下:執(zhí)行取數(shù)

9、指令,從主存5號(hào)單元取出數(shù)a,送入累加器中。執(zhí)行加法指令,將累加器中的內(nèi)容 a與從主存6號(hào)單元取出的數(shù)b 一起送到算術(shù)邏輯部件ALU (Arithmetic Logic Unit,ALU)中相加,結(jié)果a+ b保留在累加器中。 執(zhí)行減法指令,將累加器中的內(nèi)容 a+ b與從主存7號(hào)單元取出的數(shù)c一起送到算術(shù)邏輯部件ALU中相減,結(jié)果 a+ b-c保留在累加器中。 執(zhí)行存數(shù)指令,把累加器中的內(nèi)容 a+ b -c存至主存8號(hào)單元。 執(zhí)行停機(jī)指令,計(jì)算機(jī)停止工作。二。編譯型和解釋型語(yǔ)言將高級(jí)語(yǔ)言翻譯成機(jī)器語(yǔ)言有兩種方式:編譯和解釋。二者區(qū)別在于翻譯的時(shí)間不同。編譯型語(yǔ)言:程序在執(zhí)行之前需要一個(gè)專門的編譯

10、過程,把程序編譯成為機(jī)器語(yǔ)言的文件,運(yùn)行時(shí)不需要重新翻譯,直接使用 編譯的結(jié)果就行了。因此效率比較高。比如C語(yǔ)言。解釋型語(yǔ)言:程序不需要編譯,程序在運(yùn)行時(shí)才翻譯成機(jī)器語(yǔ)言,每執(zhí)行一次都要翻譯一次。因此效率比較低。比如Basic語(yǔ)言,專門有一個(gè)解釋器能夠直接執(zhí)行 Basic程序,每個(gè)語(yǔ)句都是執(zhí)行的時(shí)候才翻譯。C語(yǔ)言是編譯型的。Java比較特殊,Java程序也需要編譯,但是沒有直接編譯成機(jī)器語(yǔ)言,而是編譯成字節(jié)碼,然后用解釋方式執(zhí)行字節(jié)碼。C程序機(jī)器語(yǔ)言(編譯)Java程序字節(jié)碼(編譯)機(jī)器語(yǔ)言(解釋)指令是由0和1組成的一組具有 根據(jù)當(dāng)前硬件狀態(tài)而改變計(jì)算機(jī)硬件狀態(tài)為目地的二進(jìn)制代碼。簡(jiǎn)單的說(shuō)計(jì)算機(jī)就是電 路的狀態(tài)的表現(xiàn)。計(jì)算機(jī)是一種思想 控制、輸入輸出、處理、存儲(chǔ)”從一個(gè)人的處理事件的角度上說(shuō)是符合人類的處理 方式。所以計(jì)算機(jī)是一種以人類處理事物思想的產(chǎn)物。計(jì)算機(jī)能按部就班的工作是依靠它的內(nèi)部電路的狀態(tài)(如 寄存器),在計(jì)算機(jī)內(nèi)一條指令可以理解成改變這些電路狀態(tài) 的二進(jìn)制代碼,當(dāng)然改變是根據(jù)硬件當(dāng)時(shí)的狀態(tài)來(lái)改變的,比如果1+1的計(jì)算機(jī)內(nèi)部,1這個(gè)值是一種電路狀態(tài),通過一組邏輯電路把兩組電路的狀態(tài)重新組合成一

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論