iT邦幫忙

DAY 13
1

淺入淺出-計算機組織系列 第 13

淺入淺出計組之旅(13)MIPS 體系結構 (3)

  • 分享至 

  • xImage
  •  

相比於 x86 指令手冊動輒上千頁,MIPS 指令集只需要這兩頁即可呈現

MIPS 指令主要分為以下三種:R(Register) 型、 I(Immediate) 型、以及 J(Jump) 型

R 型指令格式包含六個區塊:opcode 和 funct 是6bits、其他皆是 4bits

opcode 用於指定指令類型、對於所有 R 型指令該值均為 0,用 funct 來精確指定指令類型

Rs (Source Register):指定第一個來源操作數的暫存器編號

Rt (Target Register):指定第二個來源操作數的暫存器編號

Rd (Destination Register):指定目的操作數的暫存器編號

5bits 也正好可以代表上一篇所提到的 32個通用暫存器

shamt 表示位移的位數

例: add $8, $9, $10 → opcode:0,funct:32,shamt:0

$8 = $9 + $10

所以轉換成指令碼就是: 000000 01001 01010 01000 00000 10000

這樣一來就可以很容易的進行譯碼和轉換

下一篇在繼續說明 I 型與 J 型指令

大家可以想一下為什麼 R型指令中 opcode 和 funct 要特別分前後兩段而不合起來呢?


上一篇
淺入淺出計組之旅(12)MIPS 體系結構 (2)
下一篇
淺入淺出計組之旅(14)MIPS 體系結構 (4)
系列文
淺入淺出-計算機組織30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言