第19講-第7章 指令系統(tǒng)(71-72)_第1頁
第19講-第7章 指令系統(tǒng)(71-72)_第2頁
第19講-第7章 指令系統(tǒng)(71-72)_第3頁
第19講-第7章 指令系統(tǒng)(71-72)_第4頁
第19講-第7章 指令系統(tǒng)(71-72)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《計(jì)算機(jī)組成原理》

第19講

第7章指令系統(tǒng)(7.1-7.2)主講人:李淑芝第七章指令系統(tǒng)7.1機(jī)器指令7.2操作數(shù)類型和操作類型7.3尋址方式7.4指令格式舉例7.5RISC技術(shù)本課學(xué)習(xí)教學(xué)目標(biāo):讓學(xué)生對(duì)指令系統(tǒng)有初步的認(rèn)識(shí)與了解,掌握常用指令格式,理解指令系統(tǒng)與機(jī)器的主要功能以及與硬件結(jié)構(gòu)之間存在的密切關(guān)系。重點(diǎn):指令的一般格式和數(shù)據(jù)在存儲(chǔ)器中的存放方式

。

難點(diǎn):數(shù)據(jù)在存儲(chǔ)器中存放時(shí)“邊界對(duì)齊”問題

教學(xué)要求復(fù)習(xí)舊課數(shù)據(jù)存放在存儲(chǔ)器中,系統(tǒng)怎么樣將存儲(chǔ)器中的數(shù)據(jù)取到運(yùn)算器中進(jìn)行定點(diǎn)或浮點(diǎn)運(yùn)算?運(yùn)算結(jié)果又怎樣保存呢?

引入新課構(gòu)成程序的指令本質(zhì)上是怎樣的軟件成份?它們?nèi)绾闻c硬件配合?

7.1機(jī)器指令7.1.1指令的一般格式操作碼字段地址碼字段(1)操作碼反映機(jī)器做什么操作長(zhǎng)度固定長(zhǎng)度可變用于指令字長(zhǎng)較長(zhǎng)的情況,RISC如IBM370操作碼8位操作碼分散在指令字的不同字段中擴(kuò)展操作碼技術(shù)操作碼的位數(shù)隨地址數(shù)的減少而增加OPA1A2A3000000011110…A1A1A1…A2A2A2…A3A3A3…A2A2A2…A3A3A3…111111111111…000000011110…111111111111…111111111111…111111111111…000000011111…111111111111…111111111111…A3A3A3…000000011110…4位操作碼8位操作碼12位操作碼16位操作碼15條三地址指令15條二地址指令15條一地址指令16條零地址指令例7.1假設(shè)指令字長(zhǎng)為16位,操作數(shù)的地址碼為6位,指令有零地址、一地址、二地址三種格式。(1)設(shè)操作碼固定,若零地址指令有P種,一地址指令有Q種,則二地址指令最多有幾種?(2)采用擴(kuò)展操作碼技術(shù),若二地址指令有X種,零地址指令有Y種,則一地址指令最多有幾種?解:(1)根據(jù)操作數(shù)地址碼為6位,則二地址指令中操作碼的位數(shù)為16-6-6=4。這4位操作碼可有24=16種操作。由于操作碼固定,則二地址指令最多有16-P-Q種。(2)采用擴(kuò)展操作碼技術(shù),操作碼位數(shù)可變,則二地址、一地址和零地址的操作碼長(zhǎng)度分別為4位、10位和16位??梢姸刂分噶畈僮鞔a每減少一種,就可多構(gòu)成26種一地址指令操作碼;一地址指令操作碼每減少一種,就可多構(gòu)成26種零地址指令操作碼。因二地址指令有X種,則一地址指令最多有(24-X)×26種。設(shè)一地址指令有M種,則零地址指令最多有[(24-X)×26-M]×26種。根據(jù)題意,零地址指令有Y種,則M=(24-X)×26-Y×2-6(2)地址碼四地址三地址OPA1A2A3A486666A1

第一操作數(shù)地址A2

第二操作數(shù)地址A3

結(jié)果的地址A4

下一條指令地址若PC代替A4(A1)OP(A2)A38888OPA1A2A3(A1)OP(A2)A34次訪存4次訪存尋址范圍26=64尋址范圍28=256若A3用A1或A2代替設(shè)指令字長(zhǎng)為32位操作碼固定為8位二地址OPA1A281212(A1)OP(A2)A1(A1)OP(A2)A2或4次訪存若ACC代替A1(或A2)若結(jié)果存于ACC一地址零地址OPA1824無地址碼(ACC)OP(A1)ACC2次訪存尋址范圍212=4K尋址范圍224=16M3次訪存問題1:從操作數(shù)的物理位置來說,指令又可歸結(jié)為幾種類型?指令字長(zhǎng)決定于操作碼的長(zhǎng)度指令字長(zhǎng)=存儲(chǔ)字長(zhǎng)(2)指令字長(zhǎng)可變操作數(shù)地址的長(zhǎng)度操作數(shù)地址的個(gè)數(shù)(1)指令字長(zhǎng)固定按字節(jié)的倍數(shù)變化7.1機(jī)器指令7.1.2指令字長(zhǎng)小結(jié)當(dāng)用一些硬件資源代替指令字中的地址碼字段后當(dāng)指令的地址字段為寄存器時(shí)可擴(kuò)大指令的尋址范圍可縮短指令字長(zhǎng)可減少訪存次數(shù)三地址OPR1,

R2,R3二地址OPR1,R2

一地址OPR1

指令執(zhí)行階段不訪存可縮短指令字長(zhǎng)7.2操作數(shù)類型和操作種類7.2.1操作數(shù)類型地址數(shù)字字符邏輯數(shù)無符號(hào)整數(shù)定點(diǎn)數(shù)、浮點(diǎn)數(shù)、十進(jìn)制數(shù)ASCII邏輯運(yùn)算7.2.2數(shù)據(jù)在存儲(chǔ)器中的存放方式字地址為低字節(jié)地址字地址為高字節(jié)地址37621540字地址04低字節(jié)04512673字地址04低字節(jié)存儲(chǔ)器中的數(shù)據(jù)存放(存儲(chǔ)字長(zhǎng)為

32

位)地址(十進(jìn)制)04812162024283236雙字雙字(地址32)雙字雙字(地址24)半字(地址20)半字(地址22)半字(地址16)半字(地址18)字節(jié)(地址8)字節(jié)(地址9)字節(jié)(地址10)字節(jié)(地址11)字(地址4)字(地址0)字節(jié)(地址14)字節(jié)(地址15)字節(jié)(地址13)字節(jié)(地址12)邊界對(duì)準(zhǔn)地址(十進(jìn)制)048字節(jié)(地址7)字節(jié)(地址6)字(地址2)半字(地址10)半字(地址8)半字(地址0)字(地址4)邊界未對(duì)準(zhǔn)

7.2.3操作類型(1)數(shù)據(jù)傳送源目的寄存器寄存器寄存器寄存器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器存儲(chǔ)器置“1”,清“0”(2)算術(shù)邏輯操作加、減、乘、除、增1、減1、求補(bǔ)、浮點(diǎn)運(yùn)算、十進(jìn)制運(yùn)算與、或、非、異或、位操作、位測(cè)試、位清除、位求反如8086MOVESTORELOADMOVEPUSHPOP例如MOVEMOVEADDSUBMULDIVINCDECCMPNEGAAAAASAAMAADANDORNOTXORTEST(3)移位操作算術(shù)移位(4)轉(zhuǎn)移無條件轉(zhuǎn)移JMP條件轉(zhuǎn)移結(jié)果為零轉(zhuǎn)(Z=1)

JZ結(jié)果溢出轉(zhuǎn)(O=1)JO結(jié)果有進(jìn)位轉(zhuǎn)(C=1)JC跳過一條指令SKP循環(huán)移位(帶進(jìn)位和不帶進(jìn)位)如300…305306307SKPDZD=0則跳邏輯移位完成觸發(fā)器7.2.3操作類型調(diào)用和返回CALLSUB1.........CALLSUB2…...CALLSUB2…RETURNRETURN......主程序地址200021002101子程序SUB1240025002501256025612700主存空間分配程序執(zhí)行流程子程序SUB27.2.3操作類型(4)轉(zhuǎn)移陷阱(Trap)與陷阱指令意外事故的中斷一般不提供給用戶直接使用,在出現(xiàn)事故時(shí),由CPU自動(dòng)產(chǎn)生并執(zhí)行(隱指令)設(shè)置供用戶使用的陷阱指令,如8086的INTTYPE軟中斷,提供給用戶使用的陷阱指令,完成系統(tǒng)調(diào)用INAX,nOUTDX,ALOUTn,AXOUTDX,AXINAL,DXINAX,DX入端口地址CPU的寄存器出CPU的寄存器端口地址如如INAL,nOUTn,AL7.2.3操作類型(5)輸入輸出(6)其它主要有:等待指令、停機(jī)指令、空操作指令、開中斷指令、關(guān)中斷指令、置條件碼指令課堂練習(xí)題:1.以下四種類型指令中,執(zhí)行時(shí)間最長(zhǎng)的是_____。A.RR型B.RS型C.SS型D.程序控制指令

答案:C2.程序控制類指令的功能______。A.進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算B.進(jìn)行主存和CPU之間的數(shù)據(jù)傳送C.進(jìn)行CPU和I/O設(shè)備之間的數(shù)據(jù)傳送D.改變程序執(zhí)行的順序

答案:D3.在指令的地址字段中,直接指出操作數(shù)本身的尋址方式,稱為______。A.隱含尋址B.立即尋址C.寄存器尋址D.直接尋址

答案:B4.條件轉(zhuǎn)移、無條件轉(zhuǎn)移、轉(zhuǎn)子程序、返主程序、中斷返回指令都屬于A.______類指令,這類指令在指令格式中所表示的地址不是B.____的地址,而是C._____的地址。

答案:A.程序控制B.操作數(shù)C.下一條指令

課堂練習(xí)題:5.若機(jī)器字長(zhǎng)36位,采用三地址格式訪存指令,共完成54種操作,操作數(shù)可在1K地址范圍內(nèi)尋找,畫出該機(jī)器的指令格式。解:課堂練習(xí)題:6.舉例說明存儲(chǔ)器堆棧的原理及入棧、出棧

的過程。

答案:所謂存儲(chǔ)器堆棧,是把存儲(chǔ)器的一部分用作堆棧區(qū)。入棧操作可描述為(A)→MSP,(SP-1)→SP出棧操作可描述為(SP+1)→SP,(MSP)→A課堂練習(xí)題:7.指令格式是指令用A.______表示的結(jié)構(gòu)形式,通常格式中由操作碼字段和B.______字段組成。

答案:A.二進(jìn)制代碼B.地址碼

8.堆棧是一種特殊的數(shù)據(jù)尋址方式,它采用A.___原理。按結(jié)構(gòu)不同,分為B.___堆棧和C.___堆棧。

答案:A.先

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論