本页使用了标题或全文手工转换

寄存器

维基百科,自由的百科全书
跳转至: 导航搜索

寄存器Register),是中央處理器內的其中組成部份。寄存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、數據位址。在中央處理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序計數器。在中央處理器的算術及邏輯部件中,包含的寄存器有累加器

電腦架構裡,處理器中的暫存器是少量且速度快的電腦記憶體,藉由提供快速共同地存取數值來加速電腦程式的執行:典型地說就是在已知時間點所作的之計算中間的數值。

暫存器是記憶體階層中的最頂端,也是系統操作資料的最快速途徑。暫存器通常都是以他們可以保存的位元數量來估量,舉例來說,一個8位元暫存器或32位元暫存器。暫存器現在都以暫存器陣列的方式來實作,但是他們也可能使用單獨的正反器、高速的核心記憶體薄膜記憶體以及在數種機器上的其他方式來實作出來。

這個名詞通常都用來意指由一個指令之輸出或輸入可以直接索引到的暫存器群組。更適當的是稱他們為「架構暫存器」。例如,x86指令集定義八個32位元暫存器的集合,但一個實作x86指令集CPU可以包含比八個更多的暫存器。

暫存器的種類[编辑]

資料寄存器
用來儲存整數數字(參考以下的浮點暫存器)。在某些簡單(或舊)的CPU,特別的資料暫存器是累加器,作為數學計算之用。
位址寄存器
持有記憶體位址,以及用來存取記憶體。在某些簡單/舊的CPU裡,特別的位址暫存器是索引暫存器(可能出現一個或多個)。
通用目的暫存器
GPRs)- 可以保存資料或位址兩者,也就是說他們是結合 資料/位址 暫存器的功用。
浮點寄存器
FPRs)- 用來儲存浮點數字。
常數寄存器
用來持有唯讀的數值(例如0、1、圓周率等等)。
向量寄存器
用來儲存由向量處理器執行SIMD指令所得到的資料。
特殊目的寄存器
儲存CPU內部的資料,像是程式計數器(或稱為指令指標),堆疊暫存器,以及狀態暫存器(或稱微處理器狀態字組)。
  • 在某些架構下,模式指示暫存器(也稱為「機器指示寄存器」)儲存和設定跟處理器自己有關的資料。由於他們的意圖目的是附加到特定處理器的設計,因此他們並不被預期會成微處理器世代之間保留的標準。

範例[编辑]

CPU架構 整數
暫存器數量
雙精度浮點數
暫存器數量
x86 8 8
x86-64 16 16
System/360 16 4
z/Architecture 16 16
Itanium 128 128
UltraSPARC 32 32
IBM POWER 32 32
Alpha 32 32
6502 3 0
PIC微控制器 1 0
AVR微控制器 32 0
ARM 16 16


參見[编辑]