




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、3.1 機器指令機器指令 3.2 操作數類型和操作類型操作數類型和操作類型 3.3 尋址方式尋址方式 3.4 指令格式舉例指令格式舉例 3.5 RISC 技術技術 一、指令的一般格式一、指令的一般格式 操作碼字段操作碼字段 地址碼字段地址碼字段1. 操作碼操作碼反映機器做什么操作反映機器做什么操作(1) 長度固定長度固定(2) 長度可變長度可變用于指令字長較長的情況用于指令字長較長的情況 ,RISC如如 IBM 370操作碼操作碼 8 位位操作碼分散在指令字的不同字段中操作碼分散在指令字的不同字段中(3) 擴展操作碼技術擴展操作碼技術操作碼的位數隨地址數的減少而增加操作碼的位數隨地址數的減少而
2、增加OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111111111111111111111A3A3A30000000111104 位操作碼位操作碼8 位操作碼位操作碼12 位操作碼位操作碼16 位操作碼位操作碼15條三地址指令條三地址指令15條二地址指令條二地址指令15條一地址指令條一地址指令16條零地址指令條零地址指令2. 地址碼地址碼(1) 四地址四地址(2) 三地址三地址OP A
3、1 A2 A3 A48 6 6 6 6A1 第一操作數地址第一操作數地址A2 第二操作數地址第二操作數地址A3 結果的地址結果的地址A4 下一條指令地址下一條指令地址若若 PC 代替代替 A4(A1) OP (A2) A38 8 8 8 OP A1 A2 A3(A1) OP (A2) A34 次訪存次訪存4 次訪存次訪存尋址范圍尋址范圍 26 = 64尋址范圍尋址范圍 28 = 256若若 A3 用用 A1 或或 A2 代替代替設指令字長為設指令字長為 32 位位操作碼固定為操作碼固定為 8 位位(3) 二地址二地址OP A1 A28 12 12(A1) OP (A2) A1(A1) OP (
4、A2) A2或或4 次訪存次訪存若若ACC 代替代替 A1(或或A2)若結果存于若結果存于 ACC (4) 一地址一地址(5) 零地址零地址OP A18 24無地址碼無地址碼(ACC) OP (A1) ACC2 次訪存次訪存尋址范圍尋址范圍 212 = 4 K尋址范圍尋址范圍 224 = 16 M 3次訪存次訪存二、指令字長二、指令字長指令字長決定于指令字長決定于操作碼的長度操作碼的長度指令字長指令字長 = 存儲字長存儲字長2. 指令字長指令字長 可變可變操作數地址的長度操作數地址的長度操作數地址的個數操作數地址的個數1. 指令字長指令字長 固定固定按字節(jié)的倍數變化按字節(jié)的倍數變化小結小結 當
5、用一些硬件資源代替指令字中的地址碼字段后當用一些硬件資源代替指令字中的地址碼字段后 當指令的地址字段為寄存器時當指令的地址字段為寄存器時 可擴大指令的尋址范圍可擴大指令的尋址范圍 可縮短指令字長可縮短指令字長 可減少訪存次數可減少訪存次數 三地址三地址 OP R1, R2, R3 二地址二地址 OP R1, R2 一地址一地址 OP R1 指令執(zhí)行階段不訪存指令執(zhí)行階段不訪存 可縮短指令字長可縮短指令字長一、操作數類型一、操作數類型地址地址數字數字字符字符邏輯數邏輯數無符號整數無符號整數定點數、浮點數、十進制數定點數、浮點數、十進制數ASCII邏輯運算邏輯運算二、數據在存儲器中的存放方式二、數
6、據在存儲器中的存放方式字地址字地址 為為 低字節(jié)低字節(jié) 地址地址字地址字地址 為為 高字節(jié)高字節(jié) 地址地址37621540字地址字地址04低字節(jié)低字節(jié)04512673字地址字地址04低字節(jié)低字節(jié)存儲器中的數據存放(存儲字長為存儲器中的數據存放(存儲字長為 32 位)位)地址(十進制)地址(十進制) 0 4 812162024283236雙字雙字雙字(地址雙字(地址32)雙字雙字雙字(地址雙字(地址24)半字(地址半字(地址20)半字(地址半字(地址22)半字(地址半字(地址16)半字(地址半字(地址18)字節(jié)(地址字節(jié)(地址8)字節(jié)(地址字節(jié)(地址9)字節(jié)(地址字節(jié)(地址10)字節(jié)(地址字節(jié)(
7、地址11)字(地址字(地址 4)字(地址字(地址 0)字節(jié)(地址字節(jié)(地址14) 字節(jié)(地址字節(jié)(地址15)字節(jié)(地址字節(jié)(地址13) 字節(jié)(地址字節(jié)(地址12)邊界對準邊界對準地址(十進制)地址(十進制)048字節(jié)字節(jié)( 地址地址7)字節(jié)字節(jié)( 地址地址6)字字( 地址地址2)半字半字( 地址地址10)半字半字( 地址地址8)半字半字( 地址地址0)字字( 地址地址4)邊界未對準邊界未對準 三、操作類型三、操作類型1. 數據傳送數據傳送源源目的目的寄存器寄存器寄存器寄存器寄存器寄存器寄存器寄存器存儲器存儲器存儲器存儲器存儲器存儲器存儲器存儲器置置“1”,清,清“0”2. 算術邏輯操作算術邏輯
8、操作加、減、乘、除、增加、減、乘、除、增 1、減、減 1、求補、浮點運算、十進制運算、求補、浮點運算、十進制運算與、或、非、異或、位操作、位測試、位清除、位求反與、或、非、異或、位操作、位測試、位清除、位求反如如 8086MOVESTORELOADMOVEPUSHPOP例如例如MOVEMOVEADD SUB MUL DIV INC DEC CMP NEG AAA AAS AAM AAD AND OR NOT XOR TEST3. 移位操作移位操作算術移位算術移位4. 轉移轉移(1) 無條件轉移無條件轉移 JMP(2) 條件轉移條件轉移結果為零轉結果為零轉 (Z = 1) JZ結果溢出轉結果溢出
9、轉 (O = 1)JO結果有進位轉(結果有進位轉(C = 1)JC跳過一條指令跳過一條指令 SKP循環(huán)移位(帶進位和不帶進位)循環(huán)移位(帶進位和不帶進位)如如300305306307SKP DZ D = 0 則跳則跳邏輯移位邏輯移位完成觸發(fā)器完成觸發(fā)器(3) 調用和返回調用和返回CALL SUB1. .CALL SUB2.CALL SUB2RETURNRETURN.主程序主程序地址地址200021002101子程序子程序SUB1240025002501256025612700主存空間分配主存空間分配程序執(zhí)行流程程序執(zhí)行流程子程序子程序SUB2IN AX, nOUT DX, ALOUT n, A
10、XOUT DX, AX(4) 陷阱(陷阱(Trap)與陷阱指令與陷阱指令意外事故的中斷意外事故的中斷 設置供用戶使用的陷阱指令設置供用戶使用的陷阱指令如如 8086 INT TYPE 軟中斷軟中斷提供給用戶使用的陷阱指令,完成系統調用提供給用戶使用的陷阱指令,完成系統調用5. 輸入輸出輸入輸出 一般不提供給用戶直接使用一般不提供給用戶直接使用 在出現事故時,由在出現事故時,由 CPU 自動產生并執(zhí)行(隱指令)自動產生并執(zhí)行(隱指令)IN AL, DXIN AX, DX入入 端口地址端口地址 CPU 的寄存器的寄存器出出 CPU 的寄存器的寄存器 端口地址端口地址如如如如IN AL, nOUT
11、n, AL尋址方式尋址方式 確定確定 本條指令本條指令 的的 操作數地址操作數地址下一條下一條 欲執(zhí)行欲執(zhí)行 指令指令 的的 指令地址指令地址指令尋址指令尋址數據尋址數據尋址尋址方式尋址方式一、指令尋址一、指令尋址順序順序( PC ) + 1 PC跳躍跳躍由轉移指令指出由轉移指令指出LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址尋址方式指令地址尋址方式指令地址指令地址指令指令順序尋址順序尋址1順序尋址順序尋址2順序尋址順序尋址3跳躍尋址跳躍尋址7順序尋址順序尋址8二、數據尋址
12、二、數據尋址 形式地址形式地址 指令字中的地址指令字中的地址 有效地址有效地址 操作數的真實地址操作數的真實地址 約定約定 指令字長指令字長 = 存儲字長存儲字長 = 機器字長機器字長1. 立即尋址立即尋址 指令執(zhí)行階段不訪存指令執(zhí)行階段不訪存 A 的位數限制了立即數的范圍的位數限制了立即數的范圍形式地址形式地址 A操作碼操作碼尋址特征尋址特征OP # A立即尋址特征立即尋址特征立即數立即數 可正可負可正可負 補碼補碼形式地址形式地址 A 就是操作數就是操作數2. 直接尋址直接尋址EA = A操作數操作數主存主存尋址特征尋址特征LDAAAACC 執(zhí)行階段訪問一次存儲器執(zhí)行階段訪問一次存儲器 A
13、 的位數決定了該指令操作數的尋址范圍的位數決定了該指令操作數的尋址范圍 操作數的地址不易修改(必須修改操作數的地址不易修改(必須修改A)有效地址由形式地址直接給出有效地址由形式地址直接給出3. 隱含尋址隱含尋址操作數地址隱含在操作碼中操作數地址隱含在操作碼中ADDA操作數操作數主存主存尋址特征尋址特征AACC暫存暫存ALU另一個操作數另一個操作數隱含在隱含在 ACC 中中如如 8086MUL 指令指令被乘數隱含在被乘數隱含在 AX(16位)或位)或 AL(8位)中位)中MOVS 指令指令源操作數的地址隱含在源操作數的地址隱含在 SI 中中目的操作數的地址隱含在目的操作數的地址隱含在 DI 中中
14、 指令字中少了一個地址字段,可縮短指令字長指令字中少了一個地址字段,可縮短指令字長4. 間接尋址間接尋址EA =(A) 有效地址由形式地址間接提供有效地址由形式地址間接提供OPA尋址特征尋址特征AEA主存主存EAA1EA A1主存主存 EA10 執(zhí)行指令階段執(zhí)行指令階段 2 次訪存次訪存 可擴大尋址范圍可擴大尋址范圍 便于編制程序便于編制程序OPA尋址特征尋址特征A一次間址一次間址多次間址多次間址操作數操作數操作數操作數多次訪存多次訪存 子程序子程序主程序主程序8081201202轉轉 子程序子程序轉轉 子程序子程序間接尋址編程舉例間接尋址編程舉例(A) = 81(A) = 202 間址特征間
15、址特征JMP A 5. 寄存器尋址寄存器尋址EA = Ri 執(zhí)行階段不訪存,只訪問寄存器,執(zhí)行速度快執(zhí)行階段不訪存,只訪問寄存器,執(zhí)行速度快OPRi尋址特征尋址特征 寄存器個數有限,可縮短指令字長寄存器個數有限,可縮短指令字長操作數操作數R0RiRn寄存器寄存器有效地址即為寄存器編號有效地址即為寄存器編號EA = ( Ri )6. 寄存器間接尋址寄存器間接尋址 有效地址在寄存器中,有效地址在寄存器中, 操作數在存儲器中,執(zhí)行階段訪存操作數在存儲器中,執(zhí)行階段訪存操作數操作數主存主存OPRi尋址特征尋址特征 便于編制循環(huán)程序便于編制循環(huán)程序地址地址R0RiRn寄存器寄存器有效地址在寄存器中有效地
16、址在寄存器中7. 基址尋址基址尋址(1) 采用專用寄存器作基址寄存器采用專用寄存器作基址寄存器EA = ( BR ) + ABR 為基址寄存器為基址寄存器OPA操作數操作數主存主存尋址特征尋址特征ALUBR 可擴大尋址范圍可擴大尋址范圍 便于程序搬家便于程序搬家 BR 內容由操作系統或管理程序確定內容由操作系統或管理程序確定 在程序的執(zhí)行過程中在程序的執(zhí)行過程中 BR 內容不變,形式地址內容不變,形式地址 A 可變可變(2) 采用通用寄存器作基址寄存器采用通用寄存器作基址寄存器操作數操作數主存主存尋址特征尋址特征ALUOPR0AR0 作基址寄存器作基址寄存器 由用戶指定哪個通用寄存器作為基址寄
17、存器由用戶指定哪個通用寄存器作為基址寄存器通用寄存器通用寄存器R0Rn-1R1 基址寄存器的內容由操作系統確定基址寄存器的內容由操作系統確定 在程序的執(zhí)行過程中在程序的執(zhí)行過程中 R0 內容不變,形式地址內容不變,形式地址 A 可變可變8. 變址尋址變址尋址EA = ( IX ) +AOPA操作數操作數主存主存尋址特征尋址特征ALUIX 可擴大尋址范圍可擴大尋址范圍 便于處理數組問題便于處理數組問題 IX 的內容由用戶給定的內容由用戶給定 IX 為變址寄存器(專用)為變址寄存器(專用) 在程序的執(zhí)行過程中在程序的執(zhí)行過程中 IX 內容可變,形式地址內容可變,形式地址 A 不變不變通用寄存器也可
18、以作為變址寄存器通用寄存器也可以作為變址寄存器例例 設數據塊首地址為設數據塊首地址為 D,求求 N 個數的平均值個數的平均值直接尋址直接尋址變址尋址變址尋址LDA DADD D + 1ADD D + 2ADD D + ( N -1 )DIV # NSTA ANSLDA # 0LDX # 0INXCPX # NBNE MDIV # NSTA ANS共共 N + 2 條指令條指令共共 8 條指令條指令ADD X, DMX 為變址寄存器為變址寄存器D 為形式地址為形式地址(X) 和和 #N 比較比較(X) +1 X結果不為零則轉結果不為零則轉9. 相對尋址相對尋址 EA = ( PC ) + AA
19、是相對于當前指令的位移量(可正可負,補碼)是相對于當前指令的位移量(可正可負,補碼) A 的位數決定操作數的尋址范圍的位數決定操作數的尋址范圍 程序浮動程序浮動 廣泛用于轉移指令廣泛用于轉移指令操作數操作數尋址特征尋址特征ALUOPA相對距離相對距離 A1000PC主存主存1000AOP (1) 相對尋址舉例相對尋址舉例M 隨程序所在存儲空間的位置不同而不同隨程序所在存儲空間的位置不同而不同EA = ( M+3 ) 3 = M 3*LDA # 0LDX # 0ADD X, DINXCPX # NBNE MDIV # NSTA ANSMM+1M+2M+3而指令而指令 BNE 與與 指令指令 AD
20、D X, D 相對位移量不變相對位移量不變 3* 指令指令 BNE操作數的有效地址為操作數的有效地址為 3* 相對尋址特征相對尋址特征*(2) 按字節(jié)尋址的相對尋址舉例按字節(jié)尋址的相對尋址舉例OP位移量位移量2000 H2008 H8JMP * + 8OP06 H2000 H2008 H8設設 當前指令地址當前指令地址 PC = 2000H轉移后的目的地址為轉移后的目的地址為 2008H因為因為 取出取出 JMP * + 8 后后 PC = 2002H二字節(jié)指令二字節(jié)指令故故 JMP * + 8 指令指令 的第二字節(jié)為的第二字節(jié)為 2008H - 2002H = 6H10. 堆棧尋址堆棧尋址(
21、1) 堆棧的特點堆棧的特點堆棧堆棧硬堆棧硬堆棧軟堆棧軟堆棧多個寄存器多個寄存器指定的存儲空間指定的存儲空間先進后出先進后出(一個入出口)(一個入出口) 棧頂地址棧頂地址 由由 SP 指出指出 11FFFH +12000 H進棧進棧 (SP) 1 SP出棧出棧 (SP)+ 1 SP棧頂棧頂棧底棧底2000 HSP2000 H1FFF HSP1FFFH棧頂棧頂棧底棧底進棧進棧出棧出棧 1FFF H棧頂棧頂 2000 H棧頂棧頂(2) 堆棧尋址舉例堆棧尋址舉例15200HACCSPX棧頂棧頂200H棧底棧底主存主存151FFHACCSP15棧頂棧頂200H棧底棧底主存主存X1FFHPUSH A 前前
22、PUSH A 后后POP A 前前POP A 后后Y1FFHACCSPX棧頂棧頂200H棧底棧底主存主存151FFH15200HACCSP棧頂棧頂200H棧底棧底主存主存X15(3) SP 的修改與主存編址方法有關的修改與主存編址方法有關 按按 字字 編址編址進棧進棧出棧出棧(SP) 1 SP(SP)+ 1 SP 按按 字節(jié)字節(jié) 編址編址存儲字長存儲字長 16 位位進棧進棧出棧出棧(SP) 2 SP(SP)+ 2 SP存儲字長存儲字長 32 位位進棧進棧出棧出棧(SP) 4 SP(SP)+ 4 SP一、設計指令格式時應考慮的各種因素一、設計指令格式時應考慮的各種因素1. 指令系統的指令系統的
23、兼容性兼容性 (向上兼容)(向上兼容)2. 其他因素其他因素操作類型操作類型數據類型數據類型指令格式指令格式包括指令個數及操作的難易程度包括指令個數及操作的難易程度指令字長、操作碼位數指令字長、操作碼位數尋址方式尋址方式寄存器個數寄存器個數地址碼位數、地址個數地址碼位數、地址個數尋址方式、是否采用擴展操作碼尋址方式、是否采用擴展操作碼二、指令格式舉例二、指令格式舉例1. PDP 8指令字長固定指令字長固定 12 位位操作碼操作碼 間間 頁頁 地址碼地址碼訪存類指令訪存類指令0235411寄存器類指令寄存器類指令 1 1 1 輔助操作碼輔助操作碼02 311I/O 類指令類指令 1 1 0 設備
24、設備 操作碼操作碼02 311982. PDP 11源地址源地址OP4 6 6 16 16目的地址目的地址存儲器地址存儲器地址1存儲器地址存儲器地址2OP10 6 16目的地址目的地址存儲器地址存儲器地址目的地址目的地址4 6 6源地址源地址OP 10 6目的地址目的地址OP CODE16OP CODE指令字長有指令字長有 16 位、位、32 位、位、48 位三種位三種零地址零地址 (16 位位)一地址一地址 (16 位位)二地址二地址 R R (16 位位)二地址二地址 R M (32 位位)二地址二地址 M M (48 位位)擴展操作碼技術擴展操作碼技術3. IBM 360OPR1R2 R
25、R格式格式8 4 4OPR1XBD RX格式格式8 4 4 4 12OPR1R3BD RS格式格式8 4 4 4 12OPBDI SI格式格式8 8 4 12OPB1D1LB2D2 SS格式格式8 8 4 12 4 12二地址二地址 R R基址加變址尋址基址加變址尋址二地址二地址 R M三地址三地址 R M基址尋址基址尋址二地址二地址 M M 基址尋址基址尋址基址尋址基址尋址立即數立即數 M4. Intel 8086(1) 指令字長指令字長(2) 地址格式地址格式1 6 個字節(jié)個字節(jié)MOV WORD PTR0204, 0138H 6 字節(jié)字節(jié)INC AX 1 字節(jié)字節(jié)一地址一地址NOP 1 字節(jié)字節(jié)CALL段內調用段內調用 3 字節(jié)字節(jié)零地址零地址 5 字節(jié)字節(jié)段間調用段間調用寄存器寄存器 寄存器寄存器寄存器寄存器 立即數立即數寄存器寄存器 存儲器存儲器ADD AX,BX 2 字節(jié)字節(jié)ADD AX,3048H 4 字節(jié)字節(jié)ADD AX,3048H 3 字節(jié)字節(jié)二地址二地址C
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度能源開發(fā)合作合同終止與解除條款
- 二零二五年度白酒銷售合同書版:白酒銷售渠道拓展與品牌合作推廣協議
- 垃圾清運與環(huán)保教育合同
- 2025年度稅務籌劃與稅務籌劃改進合同
- 2025年度鋼結構工程信息化管理與應用合同匯編
- 第1課 物聯網發(fā)展簡述 教學設計 2024-2025學年 贛科版初中信息技術八年級上冊
- 2024年全國1卷立體幾何大題的教學設計
- 咖啡藝術館裝飾合同樣本
- 2025年度水果蔬菜貨物委托運輸協議
- 2025年度離婚協議版:二零二五年度離婚財產分割及子女撫養(yǎng)費協議
- 《社區(qū)工作者培訓課件 新浪版》
- 教育信息化背景下的學術研究趨勢
- 人教版小學數學(2024)一年級下冊第五單元100以內的筆算加、減法綜合素養(yǎng)測評 B卷(含答案)
- 會計法律法規(guī)答題答案
- 2025江蘇常州溧陽市部分機關事業(yè)單位招聘編外人員78人歷年高頻重點提升(共500題)附帶答案詳解
- 2025年學校心理健康教育工作計劃(三篇)
- 2025年教科版科學五年級下冊教學計劃(含進度表)
- 歐盟一般食品法Regulation-(EC)-No-178-2002中文翻譯
- 2024屆高考語文二輪復習詩歌專題訓練文學短評類題型(含解析)
- 春節(jié)安全生產開工第一課培訓課件內容
- 2024年度體育賽事贊助合同:運動員代言與贊助權益2篇
評論
0/150
提交評論