書小宅之計算機組成原理 MIPS指令

2021-09-24 16:58:32 字數 3390 閱讀 4453

mips-32【million instructions per second】[標號:]指令助記符 第1運算元[, 第2運算元 [, 第3運算元]] [# 注釋]

暫存器

在mips體系結構中有32個32位的定長暫存器,mips約定「$」後面跟兩個字元來代表乙個暫存器。由編譯器負責將程式變數和暫存器對應起來。

暫存器是計算機中儲存資料最快的位置,用於資料的快速訪問,與儲存器相比,暫存器訪問時間短,吞吐率高,功耗小。只能對存放在暫存器中的數執行算術操作算術運算指令的運算元必須來自於暫存器。

環出暫存器的最理想的資料結構是棧——一種後進先出的佇列:將資料放入棧中稱為壓棧,從棧中移除資料稱為出棧。

暫存器的溢位:將不常使用的變數(或稍後才使用的變數)存回儲存器的過程。

暫存器號

暫存器名稱

作用$0

$zero

常數0,該暫存器永遠只返回0。

$1$at

用做彙編器的暫時變數。

$2-$3

$v0 - $v1

用來存放乙個子程式(函式)的非浮點運算的結果或返回值。

$4-$7

$a0 - $a3

存放子程式(函式)呼叫時的非浮點引數。

$8-$15

$t0 - $t7

暫時變數,子程式(函式)使用時不儲存這些暫存器的值,因此呼叫後它們的值會被破壞。

$16-$23

$s0 - $s7

8個子程式用暫存器。子程式(函式)必須在返回之前恢復這些暫存器的值以保證其沒有變化。

$24-$25

$t8 - $ t9

暫時變數,子程式(函式)使用時不儲存這些暫存器的值,因此呼叫後它們的值會被破壞。

$26-$27

$k0 - $ k1

為中斷/異常處理保留。由作業系統的異常或中斷處理程式使用,不恢復原來的值。

$28$gp

全域性指標。某些執行時系統用來為static或extern變數提供簡單的訪問方式。

$29$sp

堆疊指標,對它的調整必須顯式的通過指令來實現,硬體不支援堆疊指標的調整。

$30$fp

第9個子程式用暫存器變數,子程式用它做堆疊幀指標。

$31$ra

存放呼叫子程式(函式)時的返回起始點的返回位址暫存器。

儲存器:有2^39個,相當於乙個很大的一維陣列,根據儲存器位址(陣列下標)訪問儲存器中的。只能通過資料傳輸指令訪問,用於儲存資料結構、陣列和溢位的暫存器。

常數操作:常數在引導程式的時候被放入儲存器,使用時必須先從儲存器中取出來。『

立即數操作:直接採用乙個運算元是常數的指令。(如addi)【lw指令可以看作乙個運算元是0的加法】

無符號整數:負位址是沒有意義的,處理此類僅能是正的數需要用無符號整數(unsigned int)。

符號擴充套件:取回有符號數後需要使用符號位填充暫存器的所有剩餘位。將n位立即數擴充套件為32位,將擴充套件後的資料的高(32-n)位置複製為立即數的最高位。

無符號擴充套件:直接將擴充套件後的資料的高(32-n)位置為0。

16位立即數

無符號整數

有符號整數

0x8000

0x00008000

0xffff8000

0x1000

0x00001000

0x00001000

無符號數的最高有效位是符號位,而無符號數的最高有效位是具有最大權重的位。

基本塊:分支僅可能出現在**末尾、分支目標和分支標籤僅有可能出現在**起始位置的指令序列。

r指令r格式指令為純暫存器指令,所有的運算元(除移位外)均儲存在暫存器中。op欄位均為0,使用funct欄位區分指令。

不使用shamt欄位時,該字段為0。

and:表示按位與,提供了一種將源運算元中某些位置為0的能力,前提是另乙個運算元中對應位為0,這個運算元被稱為掩碼。

or:表示按位或,該操作在兩個操作位中任意一位為1時結果就為1.

not:表示按位取反,僅有乙個運算元。

第一類邏輯操作稱為移位:shift。他們將乙個字裡面的所有位都向左或向右移動,並在空出來的位置上填上0。

i指令i格式指令為帶立即數的指令,最多使用兩個暫存器,同時包括了load/store指令。使用op欄位區分指令。

lui:專門用於設定暫存器中常數的高16位置,將高16位立即數量值存放到暫存器的高16位,低16位用0填充。允許後續指令設定常數的低16位。

資料傳送指令:在暫存器和儲存器之間傳送資料。

取數指令load/lw:將資料從儲存器拷貝到暫存器的資料傳送指令。

存數指令store/sw:將資料從暫存器拷貝到儲存器的資料傳送指令。

條件分支指令:

j指令j格式指令為長跳轉指令,僅有乙個立即數運算元。使用op欄位區分指令。

敬請批評指正!

書小宅之計算機組成原理 計算機概要與技術

現代計算機的特徵是處理器的並行性和層次性。計算機的結構層次 硬體 計算機的五個典型部件 輸入 輸出 儲存器 運算器和控制器,後兩個稱為處理器。電子技術取代老式機電技術的例子 1 光電滑鼠取代電動機電式滑鼠 2 快閃儲存器。儲存記憶體用於儲存程式執行時的資料儲存空間。dram用於承載程式的指令和資料,...

考研 之 計算機組成原理

1.理解單處理器計算機系統中各部件的內部工作原理 組成結構以及相互連線方式,具有完整的計算機系統的整機概念。2.理解計算機系統層次化結構概念,熟悉硬體與軟體之間的介面,掌握指令集體系結構的基本知識和基本實現方法。3.能夠綜合運用計算機組成的基本原理和基本方法,對有關計算機硬體系統中的理論和實際問題進...

軟考 之 計算機組成原理

軟考準備了不短的時間了,對於計算機組成原理這部分的感覺仍然是亂,摘不出頭緒來,接下來就來導導。首先從整體上來看計算機的整體的體系,如下圖 其實這麼看著也挺簡單了的是吧。一句話這知識皮毛而已。接下來我們看看我們平時操作電腦的乙個軟硬體協作的過程,如下圖 這個看似簡單的流程軟硬體的互動其實都是通過對 0...