第七章-指令系統(tǒng)03-指令的類型_第1頁
第七章-指令系統(tǒng)03-指令的類型_第2頁
第七章-指令系統(tǒng)03-指令的類型_第3頁
第七章-指令系統(tǒng)03-指令的類型_第4頁
第七章-指令系統(tǒng)03-指令的類型_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

史葦杭辦公室:306辦公電話子郵件:shiwh@《計算機(jī)組成原理》第七章指令系統(tǒng)軟件硬件邏輯功能:計算0+1機(jī)器指令:0010001匯編語言:ADDr1,r2第七章指令系統(tǒng)7.1、指令系統(tǒng)概述7.2、指令的格式

7.2.1、地址碼結(jié)構(gòu)

7.2.2、操作碼結(jié)構(gòu)7.3、指令的尋址方式(10種)7.4、指令的類型與功能(6類)7.5、RISC和CISC的比較在一個有限的存儲空間里,對于任何可解的問題,編制計算程序時,指令系統(tǒng)提供的指令足夠使用。指令系統(tǒng)的完備性7.4、指令的類型與功能一臺計算機(jī)包含一些什么類型的指令?涉及到指令系統(tǒng)的完備性。如果一臺計算機(jī)的指令系統(tǒng)不完備,就無法編出完整的程序。指令系統(tǒng)的完備性是指在一個有限的存儲空間里,對于任何可解決的問題,編制程序時,指令系統(tǒng)提供的指令足夠使用!一般歸結(jié)為六大類指令。1)數(shù)據(jù)傳送類指令功能:實現(xiàn)將數(shù)據(jù)從源地址傳送到目的地址,且源地址中數(shù)據(jù)不變。

1、傳送:從一個地方傳送到另一個地方;

2、復(fù)制:傳送是以復(fù)制的方式。

傳送范圍:寄存器R-寄存器R,主存單元M-寄存器R,主存單元M–主存單元M

傳送單位:按字節(jié)、字、字符串、數(shù)據(jù)塊等

MOVAL,BL(字節(jié))MOVAX,BX(字)

MOVSB(字符串)REPMOVSB(數(shù)據(jù)塊)傳送數(shù)據(jù)取值:原值傳送,取補,取反,零值傳送主要包括:取數(shù)指令、存數(shù)指令、傳送指令、成組傳送指令、字節(jié)交換指令、清累加器指令、堆棧操作指令等等。7.4、指令的類型與功能功能設(shè)置考慮問題2)算術(shù)運算類指令功能:實現(xiàn)各種算術(shù)運算(大型機(jī)中有向量運算指令,直接對整個向量或矩陣進(jìn)行求和、求積運算)。主要包括:二進(jìn)制定點加、減、乘、除指令,浮點加、減、乘、除指令,求反、求補指令,算術(shù)移位指令,算術(shù)比較指令,十進(jìn)制加、減運算指令等。指令舉例:

ADD加法(最基本指令) SUB減法(最基本指令)

MUL乘法 DIV除法

NEG求補 ABS求絕對值

INC+1 DEC-17.4、指令的類型與功能功能設(shè)置考慮問題(在算術(shù)運算中講過的問題都要考慮):二/十進(jìn)制運算;定點/浮點運算;整數(shù)/小數(shù)運算;是否規(guī)格化;固定字長/變字長運算;半字長/全字長/雙字長運算等等。3)邏輯運算類指令功能:把一個數(shù)據(jù)字看做是一個位數(shù)組,分別處理每一位。主要包括:邏輯加、邏輯乘、按位加、邏輯移位等指令,移位指令用來對寄存器的內(nèi)容實現(xiàn)左移、右移或循環(huán)移位。指令舉例:

AND與OR或COM非(求反)EOR異或7.4、指令的類型與功能設(shè)置功能設(shè)置考慮問題:不同指令的功能設(shè)置與邏輯運算規(guī)律有關(guān)系。4)移位類指令功能:實現(xiàn)邏輯移位,循環(huán)移位,算術(shù)移位。

主要包括:算術(shù)右移,算術(shù)左移,邏輯右移,邏輯左移,循環(huán)右移,循環(huán)左移功能設(shè)置考慮問題: 數(shù)據(jù)格式:字符移位,字移位 移位參數(shù):移動一位的次數(shù)與移動方向 被移動的寄存器地址 補位的方法。指令舉例:SHLAL,1寄存器AL左移1位

MOVDL,5SHLAL,DL寄存器AL左移5位7.4、指令的類型與功能設(shè)置5)程序控制(轉(zhuǎn)移)類指令功能:實現(xiàn)控制程序的執(zhí)行順序和選擇程序的運行方向。它是計算機(jī)的智能機(jī)構(gòu),設(shè)置較為復(fù)雜。程序執(zhí)行的三大結(jié)構(gòu):順序、分支、循環(huán)順序:PC+1;分支:分支點(必須設(shè)置比較測試指令與條件轉(zhuǎn)移指令)匯合點(必須設(shè)置無條件轉(zhuǎn)移指令);循環(huán):循環(huán)次數(shù)已知(計數(shù)跳指令LOOP)循環(huán)次數(shù)未知

7.4、指令的類型與功能設(shè)置A=B?執(zhí)行A執(zhí)行A分支點匯合點調(diào)用子程序:主程序調(diào)用子程序時,重點考慮主程序與子程序的鏈接。子程序是一個公共程序,主程序可以在任意一地址調(diào)用它,設(shè)置一條無條件轉(zhuǎn)移指令轉(zhuǎn)向子程序的入口地址就可以了,但是從子程序返回主程序地址時設(shè)置返回指令。轉(zhuǎn)移地址可以通過鏈接寄存器,或堆棧進(jìn)行操作。利用堆??梢詫崿F(xiàn)子程序嵌套調(diào)用。7.4、指令的類型與功能設(shè)置6)輸入輸出指令

功能:控制輸入輸出設(shè)備的工作,完成計算機(jī)與輸入輸出設(shè)備之間的數(shù)據(jù)交換。根據(jù)不同的機(jī)器結(jié)構(gòu),功能設(shè)置方式不同:1)內(nèi)存與輔存統(tǒng)一編制;2)輔存單獨編址。7.4、指令的類型與功能設(shè)置第七章指令系統(tǒng)7.1、指令系統(tǒng)概述7.2、指令的格式

7.2.1、地址碼結(jié)構(gòu)

7.2.2、操作碼結(jié)構(gòu)7.3、指令的尋址方式(9種)7.4、指令的類型與功能(6類)7.5、RISC和CISC的比較

系統(tǒng)指令復(fù)雜龐大,各種指令使用頻度相差大

指令長度不固定、指令格式種類多、尋址方式多

訪存

指令不受限制

大多數(shù)指令需要多個時鐘周期

執(zhí)行完畢

采用微程序控制器

CPU中設(shè)有專用寄存器

難以

用優(yōu)化編譯

生成高效的目的代碼

7.5、RISC和CISC的比較CISC的主要特征

選用使用頻度較高的一些簡單指令,復(fù)雜指令的功能由簡單指令來組合

指令長度固定、指令格式種類少、尋址方式少

只有LOAD/STORE

指令訪存

采用流水技術(shù)一個時鐘周期

內(nèi)完成一條指令

采用組合邏輯控制器

CPU中有多個

通用寄存器

采用優(yōu)化

的編譯

程序

7.5、RISC和CISC的比較RISC的主要特征7.5、RISC和CISC的比較1、RISC更能充分利用VLSI芯片的面積2、RISC更能提高計算機(jī)運算速度指令數(shù)、指令格式、尋址方式少,通用寄存器多,采用組合邏輯,便于實現(xiàn)指令流水3、RISC便于設(shè)計,可降低成本,提高可靠性4、RISC

有利于編譯程序代碼優(yōu)化

5、RISC不易

實現(xiàn)指令系統(tǒng)兼容

RISC相對CISC的優(yōu)勢例1)某16位機(jī)器所使用的指令格式和尋址方式如下所示,該機(jī)有兩個

20位基址寄存器,四個16位變址寄存器,十六個16位通用寄存器,指令格式中的S(源),D(目標(biāo))都是通用寄存器,

M是主存中的一個單元。三種指令的操作碼分別是

MOV(OP=AH),傳送指令;

STA(OP=1BH),寫數(shù)指令;

LDA(OP=3CH),讀數(shù)指令??佳蓄}目精選要求:分析三種指令的指令格式與尋址方式特點。解:第一種指令是單字長二地址指令,RR型;兩操作數(shù)尋址均為:寄存器直接尋址;第二種指令是雙字長二地址指令,RS型,一操作數(shù)尋址為:寄存器直接尋址;一操作數(shù)尋址為:基址尋址或變址尋址,第三種也是雙字長二地址指令,RS型,一操作數(shù)尋址為:寄存器直接尋址,一操作數(shù)尋址為:直接尋址??佳蓄}目精選要求:CPU完成哪一種操作所花時間最短?哪一種所花時間最長?第二種指令的執(zhí)行時間有時會等于第三種指令的執(zhí)行時間嗎?解:CPU完成第一種指令所花時間最短,因為是RR型指令,不需要訪問存儲器。第二種指令所花時間最長,因為是RS型指令,需要一次訪存,同時要進(jìn)行尋址方式的變換運算(基址或變址),這也需要時間。第二種指令的執(zhí)行時間不會等于第三種指令,因為第三種指令雖然也是一次訪存,但節(jié)省了求有效地址運算的時間開銷。考研題目精選要求:下列情況下每個十六進(jìn)制指令字分別代表什么操作?其中如果有編碼不正確,如何改正才能成為合法指令?①(F0F1)H(3CD2)H②(2856)H③(6FD6)H④(1C2)H解:已知MOV(OP=AH=001010),

STA(OP=1BH=011011),

LDA(OP=3CH=111100),

將指令的十六進(jìn)制格式轉(zhuǎn)換成二進(jìn)制代碼,比較后可知:①(F0F1)H(3CD2)H指令代表LDA指令,編碼正確,其含義是把主存(13CD2)H地址單元的內(nèi)容取至15號寄存器。

111100001111

0001 0011110011010010考研題目精選解:②(2856)H指令代表MOV指令,編碼正確,含義是把6號源寄存器的內(nèi)容傳送至5號目標(biāo)寄存器。

001010000101

0110

③(6FD6)H是單字長指令,一定是MOV指令,但編碼錯誤,可改正為(28D6)H

011011111101

0110→001010111101

0110④(1C2)H是單字長指令,代表MOV指令,但編碼錯誤,可改正為(28C2)H。

0000000111000010→00101001

1100

0010考研題目精選例2)某機(jī)器采用一地址格式的指令系統(tǒng),允許直接和間接尋址。機(jī)器配備有如下寄存器,均為16位:

ACC(累加器), PC(程序計數(shù)器),

MDR(數(shù)據(jù)緩沖寄存器), MAR(地址寄存器),

RX(變址寄存器), RB(基址寄存器)

IR(指令寄存器)問:若存儲字長不變,可采用什么方法訪問容量為8MB的主存?是否需要增加硬件?考研題目精選解:容量8MB的存儲器,因為字長不變,即MDR仍然為16位,所以對應(yīng)4M*16位的存儲器,所以存儲單元的地址有22位。可采用雙字長指令,采用直接尋址方式,可訪問4M存儲空間,此時MAR為22位。也可采用單字長指令,采用變址尋址或基址尋址方式,且變址寄存器與基址寄存器為22位,可訪問4M存儲空間。例3)某機(jī)字長32位,CPU內(nèi)有32個32位通用寄存器,設(shè)計一種能容納

64種操作的指令系統(tǒng),設(shè)指令字長等于機(jī)器字長,存儲器按字節(jié)編址。1)如果主存可直接或間接尋址,采用寄存器—存儲器型指令,能直接尋址的最大存儲空間是多少?畫出指令格式。2)如果采用通用寄存器作為基址寄存器,則上述寄存器---存儲器型指令的指令格式有何特點?畫出指令格式并指出這類指令可訪問多大的存儲空間??佳蓄}目精選解:操作碼6尋址特征1寄存器號5內(nèi)存單元地址20操作碼6尋址特征1寄存器號5形式地址15基址寄存器號5直接尋址空間220因為基址寄存器號5位,間接尋址空間232例4)某機(jī)存儲器容量為64K*16位,該機(jī)訪存指令格式如下:考研題目精選解:16種操作。操作碼4尋址模式2間址1形式地址8變址1其中,尋址00直接尋址,01基址尋址,10相對尋址,11立即尋址間址=1為間接尋址,變址=1為變址尋址,

PC為程序

溫馨提示

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

最新文檔

評論

0/150

提交評論