fbpx
维基百科

寄存器

寄存器Register)是中央處理器内用來暫存指令、數據地址電腦記憶體。寄存器的存貯容量有限,读写速度非常快。在電腦架構裡,暫存器存储在已知時間點所作計算的中間结果,通过快速地存取数据來加速電腦程式的執行。[1]

暫存器位于記憶體階層的最頂端,也是CPU可以读写的最快的存储器,事實上所謂的暫存已經不像記憶體,而是非常短暫的讀寫少量資訊並馬上用到,因為通常程序執行的步驟中,這期間就會一直使用它。暫存器通常都是以他們可以保存的位元數量來计量,舉例來說,一個8位元暫存器或32位元暫存器。在中央處理器中,包含寄存器的部件有指令寄存器(IR)、程序計數器累加器。暫存器現在都以暫存器陣列的方式來實作,但是他們也可能使用單獨的正反器、高速的核心記憶體、薄膜記憶體以及在數種機器上的其他方式來實作出來。

寄存器也可以指代由一個指令之輸出或輸入可以直接索引到的暫存器群組,这些寄存器的更确切的名称為「架構暫存器」。例如,x86指令集定義八個32位元暫存器的集合,但一個實作x86指令集CPU内部可能会有八個以上的暫存器。

暫存器的種類

資料寄存器
用來儲存整數數字(參考以下的浮點暫存器)。在某些簡單(或舊)的CPU,特別的資料暫存器是用于數學計算的累加器
位址寄存器
持有記憶體位址,以及用來存取記憶體。在某些簡單/舊的CPU裡,特別的位址暫存器是索引暫存器(可能出現一個或多個)。
通用目的暫存器
GPRs)- 可以保存資料或位址兩者,也就是說他們是結合 資料/位址 暫存器的功用。
浮點寄存器
FPRs)- 用來儲存浮點數字。
常數寄存器
用來持有唯讀的數值(例如0、1、圓周率等等)。由于“其中的值不可更改”这一特殊性质,这些寄存器未必会有实体的硬件电路相对应,例如将从零常数寄存器读的操作实现为接通目标寄存器的下拉电阻
一般而言,即使真正在硬件中放置常数寄存器也未必会是出于体系结构理论上的考虑,而很可能是由硬件描述语言为了简化操作而自动生成的电路。
向量寄存器
用來儲存由向量處理器執行SIMD指令所得到的資料。
特殊目的寄存器
儲存CPU內部的資料,像是程式計數器(或稱為指令指標),堆疊暫存器,以及狀態暫存器(或稱微處理器狀態字組)。
  • 指令寄存器 - 儲存現在正在被執行的指令
  • 变址寄存器英语Index_register - 是在程式執行時用來更改操作数位址之用。
  • 在某些架構下,模式指示暫存器(也稱為「機器指示寄存器」)儲存和設定跟處理器自己有關的資料。由於他們的意圖目的是附加到特定處理器的設計,因此他們並不被預期會成微處理器世代之間保留的標準。
  • 有關從隨機存取記憶體提取資訊的寄存器與CPU(位於不同晶片的儲存寄存器集合)
    • 記憶體緩衝寄存器英语Memory buffer register
    • 記憶體資料寄存器
    • 記憶體位址寄存器英语Memory address register
    • 記憶體型態範圍寄存器英语Memory Type Range Registers

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
RISC-V 32 32

參見

    參考資料

    1. ^ Glenn Brookshear , Dennis Brylow. Computer Science: An Overview, 13/e (IE-Paperback). Pearson FT Press. 2019-02-25: p.112–113. ISBN 1292263423. 

    寄存器, register, 是中央處理器内用來暫存指令, 數據和地址的電腦記憶體, 的存貯容量有限, 读写速度非常快, 在電腦架構裡, 暫存器存储在已知時間點所作計算的中間结果, 通过快速地存取数据來加速電腦程式的執行, 暫存器位于記憶體階層的最頂端, 也是cpu可以读写的最快的存储器, 事實上所謂的暫存已經不像記憶體, 而是非常短暫的讀寫少量資訊並馬上用到, 因為通常程序執行的步驟中, 這期間就會一直使用它, 暫存器通常都是以他們可以保存的位元數量來计量, 舉例來說, 一個8位元暫存器或32位元暫存器, 在中央. 寄存器 Register 是中央處理器内用來暫存指令 數據和地址的電腦記憶體 寄存器的存貯容量有限 读写速度非常快 在電腦架構裡 暫存器存储在已知時間點所作計算的中間结果 通过快速地存取数据來加速電腦程式的執行 1 暫存器位于記憶體階層的最頂端 也是CPU可以读写的最快的存储器 事實上所謂的暫存已經不像記憶體 而是非常短暫的讀寫少量資訊並馬上用到 因為通常程序執行的步驟中 這期間就會一直使用它 暫存器通常都是以他們可以保存的位元數量來计量 舉例來說 一個8位元暫存器或32位元暫存器 在中央處理器中 包含寄存器的部件有指令寄存器 IR 程序計數器和累加器 暫存器現在都以暫存器陣列的方式來實作 但是他們也可能使用單獨的正反器 高速的核心記憶體 薄膜記憶體以及在數種機器上的其他方式來實作出來 寄存器也可以指代由一個指令之輸出或輸入可以直接索引到的暫存器群組 这些寄存器的更确切的名称為 架構暫存器 例如 x86指令集定義八個32位元暫存器的集合 但一個實作x86指令集的CPU内部可能会有八個以上的暫存器 目录 1 暫存器的種類 2 CPU支持情况 3 參見 4 參考資料暫存器的種類 编辑資料寄存器 用來儲存整數數字 參考以下的浮點暫存器 在某些簡單 或舊 的CPU 特別的資料暫存器是用于數學計算的累加器 位址寄存器 持有記憶體位址 以及用來存取記憶體 在某些簡單 舊的CPU裡 特別的位址暫存器是索引暫存器 可能出現一個或多個 通用目的暫存器 GPRs 可以保存資料或位址兩者 也就是說他們是結合 資料 位址 暫存器的功用 浮點寄存器 FPRs 用來儲存浮點數字 常數寄存器 用來持有唯讀的數值 例如0 1 圓周率等等 由于 其中的值不可更改 这一特殊性质 这些寄存器未必会有实体的硬件电路相对应 例如将从零常数寄存器读的操作实现为接通目标寄存器的下拉电阻 一般而言 即使真正在硬件中放置常数寄存器也未必会是出于体系结构理论上的考虑 而很可能是由硬件描述语言为了简化操作而自动生成的电路 向量寄存器 用來儲存由向量處理器執行SIMD指令所得到的資料 特殊目的寄存器 儲存CPU內部的資料 像是程式計數器 或稱為指令指標 堆疊暫存器 以及狀態暫存器 或稱微處理器狀態字組 指令寄存器 儲存現在正在被執行的指令 变址寄存器 英语 Index register 是在程式執行時用來更改操作数位址之用 在某些架構下 模式指示暫存器 也稱為 機器指示寄存器 儲存和設定跟處理器自己有關的資料 由於他們的意圖目的是附加到特定處理器的設計 因此他們並不被預期會成微處理器世代之間保留的標準 有關從隨機存取記憶體提取資訊的寄存器與CPU 位於不同晶片的儲存寄存器集合 記憶體緩衝寄存器 英语 Memory buffer register 記憶體資料寄存器 記憶體位址寄存器 英语 Memory address register 記憶體型態範圍寄存器 英语 Memory Type Range Registers CPU支持情况 编辑CPU架構 整數暫存器數量 雙精度浮點數暫存器數量x86 8 8x86 64 16 16System 360 16 4z Architecture 16 16Itanium 128 128UltraSPARC 32 32IBM POWER 32 32Alpha 32 326502 3 0PIC微控制器 1 0AVR微控制器 32 0ARM 16 16RISC V 32 32參見 编辑CPU缓存 暫存器配置 寄存器堆 移位寄存器 硬體寄存器 位於CPU之外的寄存器 狀態與指令暫存器參考資料 编辑 Glenn Brookshear Dennis Brylow Computer Science An Overview 13 e IE Paperback Pearson FT Press 2019 02 25 p 112 113 ISBN 1292263423 引文格式1维护 冗余文本 link 取自 https zh wikipedia org w index php title 寄存器 amp oldid 74247963, 维基百科,wiki,书籍,书籍,图书馆,

    文章

    ,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。