第7章 指令系統 第1次課_第1頁
第7章 指令系統 第1次課_第2頁
第7章 指令系統 第1次課_第3頁
第7章 指令系統 第1次課_第4頁
第7章 指令系統 第1次課_第5頁
已閱讀5頁,還剩39頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

中央處理器CPUI/O總線M總線主存儲器

M.MI/O接口

外部設備1

外部設備2……I/O接口I/O接口

外部設備n中央處理器CPU運算器控制器控制器如何實現對計算機的控制?你是如何使用計算機的?程序員使用機器語言告訴計算機做什么?如何做?計算機執行指令實現用戶所需的功能。把計算機能夠執行的全部指令的集合稱為指令系統。機器的指令系統集中反映了機器的功能。作為計算機的設計者,應主要研究如何確定機器的指令系統,如何用硬件電路、芯片、設備來實現機器指令系統的功能。第七章指令系統7.1機器指令☆7.2操作數類型和操作類型☆7.3尋址方式★7.4指令格式舉例7.5RISC技術Intel系列CPU的發展CPU依靠指令來計算和控制系統,每款CPU在設計時就規定了一系列與其硬件電路相配合的指令系統,指令集的強弱也是CPU的重要指標之一。7.1機器指令一、指令的一般格式操作碼字段

地址碼字段1.操作碼反映機器做什么操作(1)長度固定(2)長度可變便于硬件設計,指令譯碼時間短用于指令字長較長的情況,RISC如IBM370,操作碼8位操作碼分散在指令字的不同字段中壓縮了操作碼的平均長度,但增加了指令譯碼難度和控制器的設計的復雜度(3)擴展操作碼技術操作碼的位數隨地址數的減少而增加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.12.地址碼(1)四地址(2)三地址OPA1A2A3A486666A1

第一操作數地址A2

第二操作數地址A3

結果的地址A4

下一條指令地址若PC代替A4(A1)OP(A2)A38888OPA1A2A3(A1)OP(A2)A34次訪存4次訪存尋址范圍26=64尋址范圍28=256若A3用A1或A2代替7.1設指令字長為32位操作碼固定為8位(3)二地址OPA1A281212(A1)OP(A2)A1(A1)OP(A2)A2或4次訪存若ACC代替A1(或A2)若結果存于ACC(4)一地址(5)零地址OPA1824無地址碼(ACC)OP(A1)ACC2次訪存尋址范圍212=4K尋址范圍224=16M3次訪存7.1二、指令字長指令字長決定于操作碼的長度指令字長=存儲字長2.指令字長可變操作數地址的長度操作數地址的個數1.指令字長固定按字節的倍數變化7.1小結當用一些硬件資源代替指令字中的地址碼字段后當指令的地址字段為寄存器時可擴大指令的尋址范圍可縮短指令字長可減少訪存次數三地址OPR1,

R2,R3二地址OPR1,R2

一地址OPR1

指令執行階段不訪存可縮短指令字長7.17.2操作數類型和操作種類一、操作數類型地址數字字符邏輯數無符號整數定點數、浮點數、十進制數ASCII邏輯運算二、數據在存儲器中的存放方式字地址為低字節地址字地址為高字節地址37621540字地址04低字節04512673字地址04低字節存儲器中的數據存放(存儲字長為

32

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

7.2三、操作類型1.

數據傳送源目的寄存器寄存器寄存器寄存器存儲器存儲器存儲器存儲器置“1”,清“0”2.算術邏輯操作加、減、乘、除、增1、減1、求補、浮點運算、十進制運算與、或、非、異或、位操作、位測試、位清除、位求反如8086MOVESTORELOADMOVEPUSHPOP例如MOVEMOVE7.2ADDSUBMULDIVINCDECCMPNEGAAAAASAAMAADANDORNOTXORTEST3.移位操作算術移位4.轉移(1)無條件轉移JMP(2)條件轉移結果為零轉(Z=1)

JZ結果溢出轉(O=1)JO結果有進位轉(C=1)JC跳過一條指令SKP循環移位(帶進位和不帶進位)如300…305306307SKPDZD=0則跳邏輯移位完成觸發器7.2(3)調用和返回CALLSUB1.........CALLSUB2…...CALLSUB2…RETURNRETURN......主程序地址200021002101子程序SUB1240025002501256025612700主存空間分配程序執行流程子程序SUB27.2INAX,nOUTDX,ALOUTn,AXOUTDX,AX(4)陷阱(Trap)與陷阱指令意外事故的中斷設置供用戶使用的陷阱指令如8086INTTYPE軟中斷提供給用戶使用的陷阱指令,完成系統調用5.輸入輸出一般不提供給用戶直接使用

在出現事故時,由CPU自動產生并執行(隱指令)INAL

溫馨提示

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

評論

0/150

提交評論