freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

mrlaaa指令系統(tǒng)-資料下載頁

2025-08-04 10:01本頁面
  

【正文】 ) 操作碼 6 5 5 16 0 5 6 10 11 15 16 31 ? I類 指令 ? 包括所有的 load和 store指令,立即數(shù)指令,分支指令,寄存器跳轉(zhuǎn)指令,寄存器鏈接跳轉(zhuǎn)指令。 ? 立即數(shù)字段為 16位,用于提供立即數(shù)或偏移量。 77/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) ? load指令 訪存有效地址: Regs[rs]+ immediate 從存儲(chǔ)器取來的數(shù)據(jù)放入寄存器 rt ? store指令 訪存有效地址: Regs[rs]+ immediate 要存入存儲(chǔ)器的數(shù)據(jù)放在寄存器 rt中 ? 立即數(shù)指令 Regs[rt] ← Regs[rs] op immediate ? 分支指令 轉(zhuǎn)移目標(biāo)地址: Regs[rs]+ immediate, rt無用 ? 寄存器跳轉(zhuǎn)、寄存器跳轉(zhuǎn)并鏈接 轉(zhuǎn)移目標(biāo)地址為 Regs[rs] 78/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) ? R類指令 ? 包括 ALU指令,專用寄存器讀 /寫指令, move指令等。 ? ALU指令 Regs[rd]← Regs[rs] funct Regs[rt] funct為具體的運(yùn)算操作編碼 操作碼 rs 6 5 5 6 rt 5 rd fu n c t 0 5 6 10 11 15 16 31 20 21 s h a mt 25 26 5 79/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) ? J類指令 ? 包括跳轉(zhuǎn)指令,跳轉(zhuǎn)并鏈接指令,自陷指令,異常返回指令。 ? 在這類指令中,指令字的低 26位是偏移量,它與 PC值相加形成跳轉(zhuǎn)的地址。 26 操作碼 6 與 PC 相加的偏移量 31 0 5 6 80/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) 1. MIPS指令可以分為四大類 ? load和 store ? ALU操作 ? 分支與跳轉(zhuǎn) ? 浮點(diǎn)操作 2. 符號的意義 ? x← ny: 從 y傳送 n位到 x ? x, y←z : 把 z傳送到 x和 y MIPS的操作 81/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) ? 下標(biāo): 表示字段中具體的位; ? 對于指令和數(shù)據(jù),按從最高位到最低位(即從左到右)的順序依次進(jìn)行編號,最高位為第 0位,次高位為第 1位,依此類推。 ? 下標(biāo)可以是一個(gè)數(shù)字,也可以是一個(gè)范圍。 例如: Regs[R4]0:寄存器 R4的符號位 Regs[R4]5663: R4的最低字節(jié) ? Mem: 表示主存; ? 按字節(jié)尋址,可以傳輸任意個(gè)字節(jié)。 ? 上標(biāo): 用于表示對字段進(jìn)行復(fù)制的次數(shù)。 例如: 0 32:一個(gè) 32位長的全 0字段 82/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) ? 符號 : 用于兩個(gè)字段的拼接,并且可以出現(xiàn)在數(shù)據(jù)傳送的任何一邊。 舉例 : R R10: 64位的寄存器,則 Regs[R8]3263 ← 32 ( Mem [Regs[R6]]0) 24 Mem [Regs[R6]]表示的意義是: 以 R6的內(nèi)容作為地址訪問內(nèi)存,得到的字節(jié)按符 號位擴(kuò)展為 32位后存入 R8的低 32位, R8的高 32位(即 Regs[R8]031)不變。 3. load和 store指令 指令舉例 指令名稱 含 義 LD R2, 20(R3) 裝入雙字 Regs[R2]← 64 Mem[20+Regs[R3]] LW R2, 40(R3) 裝入字 Regs[R2]← 64 (Mem[40+Regs[R3]]0)32 Mem[40+Regs[R3]] LB R2, 30(R3) 裝入字節(jié) Regs[R2]← 64 (Mem[30+Regs[R3]]0)56 Mem[30+Regs[R3]] LBU R2, 40(R3) 裝入無符號字節(jié) Regs[R2]← 64 056 Mem[40+Regs[R3]] LH R2, 30(R3) 裝入半字 Regs[R2]← 64 (Mem[30+Regs[R3]]0)48 Mem[30+Regs[R3]] Mem[31+Regs[R3]] F2, 60(R4) 裝入半字 Regs[F2]← 64 Mem[60+Regs[R4]] 032 F2, 40(R3) 裝入雙精度浮點(diǎn)數(shù) Regs[F2]← 64 Mem[40+Regs[R3]] SD R4, 300(R5) 保存雙字 Mem[300+Regs[R5]]← 64 Regs[R4] SW R4, 300(R5) 保存字 Mem[300+Regs[R5]]← 32 Regs[R4] F2, 40(R2) 保存單精度浮點(diǎn)數(shù) Mem[40+Regs[R2]]← 32 Regs[F2] 031 SH R5, 502(R4) 保存半字 Mem[502+Regs[R4]]← 16 Regs[R5] 48.63 4. ALU指令 寄存器-寄存器型( RR型)指令或立即數(shù)型 算術(shù)和邏輯操作:加、減、與、或、異或和移位等 指令舉例 指令名稱 含義 DADDU R1, R2, R3 無符號加 Regs[R1]← Regs[R2]+ Regs[R3] DADDIU R4, R5, 6 加無符號立即數(shù) Regs[R4]← Regs[R5]+6 LUI R1, 4 把立即數(shù)裝入到一個(gè)字的高 16位 Regs[R1]← 0 32 4 016 DSLL R1, R2, 5 邏輯左移 Regs[R1]← Regs[R2]5 DSLT R1, R2, R3 置小于 If(Regs[R2] Regs[R3]) Regs[R1]← 1 else Regs[R1]←0 85/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) R0的值永遠(yuǎn)是 0,它可以用來合成一些常用的操作。 例如: DADDIU R1, R0, 100 給寄存器 R1裝入常數(shù) 100 DADD R1, R0, R2 把寄存器 R2中的數(shù)據(jù)傳送到寄存器 R1 86/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) 1. 由一組跳轉(zhuǎn)和一組分支指令來實(shí)現(xiàn)控制流的改變 2. 典型的 MIPS控制指令 MIPS的控制指令 指令舉例 指令名稱 含義 J name 跳轉(zhuǎn) PC 3663← name2 JAL name 跳轉(zhuǎn)并鏈接 Regs[R31]←PC+4 ; PC 3663←name 2; ((PC+4)- 227)≤name < ((PC+4)+227) JALR R3 寄存器跳轉(zhuǎn)并鏈接 Regs[R31]←PC+4 ; PC← Regs[R3] JR R5 寄存器跳轉(zhuǎn) PC← Regs[R5] BEQZ R4, name 等于零時(shí)分支 if(Regs[R4]== 0) PC←name ; ((PC+4)- 217)≤name < ((PC+4)+217) BNE R3, R4, name 不相等時(shí)分支 if(Regs[R3]!= Regs[R4]) PC←name ((PC+4)- 217)≤name < ((PC+4)+217) MOVZ R1, R2, R3 等于零時(shí)移動(dòng) if(Regs[R3]==0) Regs[R1]← Regs[R2] 88/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) 3. 跳轉(zhuǎn)指令 ? 根據(jù)跳轉(zhuǎn)指令確定目標(biāo)地址的方式不同以及跳轉(zhuǎn)時(shí)是否鏈接,可以把跳轉(zhuǎn)指令分成 4種。 ? 確定目標(biāo)地址的方式 ? 把指令中的 26位偏移量左移 2位(因?yàn)橹噶钭珠L都是 4個(gè)字節(jié))后,替換程序計(jì)數(shù)器的低 28位; ? 間接跳轉(zhuǎn):由指令中指定的一個(gè)寄存器來給出轉(zhuǎn)移目標(biāo)地址。 ? 跳轉(zhuǎn)的兩種類型 ? 簡單跳轉(zhuǎn): 把目標(biāo)地址送入程序計(jì)數(shù)器。 ? 跳轉(zhuǎn)并鏈接: 把目標(biāo)地址送入程序計(jì)數(shù)器,把返回地址(即順序下一條指令的地址)放入寄存器 R31。 89/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) 4. 分支指令(條件轉(zhuǎn)移) ? 分支條件 由指令確定 例如: 測試某個(gè)寄存器的值是否為零 ? 提供一組比較指令,用于比較兩個(gè)寄存器的值。 例如: “ 置小于 ” 指令 ? 有的分支指令可以直接判斷寄存器內(nèi)容是否為負(fù),或者比較兩個(gè)寄存器是否相等。 ? 分支的目標(biāo)地址 由 16位帶符號偏移量左移兩位后和 PC相加的結(jié)果來決定 ? 一條浮點(diǎn)條件分支指令:通過測試浮點(diǎn)狀態(tài)寄存器來決定是否進(jìn)行分支。 90/90 ▲ MIPS指令系統(tǒng)結(jié)構(gòu) 1. 由操作碼指出操作數(shù)是單精度( SP)或雙精度( DP) ? 后綴 S: 表示操作數(shù)是單精度浮點(diǎn)數(shù) ? 后綴 D: 表示是雙精度浮點(diǎn)數(shù) 2. 浮點(diǎn)操作 包括加、減、乘、除,分別有單精度和雙精度指令。 3. 浮點(diǎn)數(shù)比較指令 ? 根據(jù)比較結(jié)果設(shè)置浮點(diǎn)狀態(tài)寄存器中的某一位,以便于后面的分支指令 BC1T(若真則分支)或BC1F(若假則分支)測試該位,以決定是否進(jìn)行分支。 MIPS的浮點(diǎn)操作
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1