寄存器分類有哪些?
寄存器分類有哪些?
寄存器分類
寄存器主要分并行寄存器和移位寄存器兩種。并行寄存器是并行輸入并行輸出寄存器。移位寄存器除具寄存器的功能外,所存儲的數碼在時鐘脈沖的作用下還可以移位。根據數碼的移位方向分為左移寄存器和右移寄存器。左移寄存器是指在時鐘脈沖的作用下,低位寄存器的數碼送給高位寄存器,作為高位寄存器的次態輸出;右移寄存器是指在時鐘脈沖的作用下,高位寄存器的數碼送給低位寄存器,作為低位寄存器的次態輸出。
寄存器分類
數據寄存器 - 用來儲存整數數字(參考以下的浮點寄存器)。在某些簡單/舊的 CPU,特別的數據寄存器是累加器,作為數學計算之用。
地址寄存器 - 持有存儲器地址,以及用來訪問存儲器。在某些簡單/舊的CPU里,特別的地址寄存器是索引寄存器(可能出現一個或多個)。
通用目的寄存器 (GPRs) - 可以保存數據或地址兩者,也就是說他們是結合 數據/地址 寄存器的功用。
浮點寄存器 (FPRs) - 用來儲存浮點數字。
常數寄存器 - 用來持有只讀的數值(例如 0、1、圓周率等等)。
向量寄存器 - 用來儲存由向量處理器運行SIMD(Single Instruction, Multiple Data)指令所得到的數據。
特殊目的寄存器 - 儲存CPU內部的數據,像是程序計數器(或稱為指令指針),堆棧寄存器,以及狀態寄存器(或稱微處理器狀態字組)。
指令寄存器(instruction register) - 儲存現在正在被運行的指令
索引寄存器(index register) - 是在程序運行實用來更改運算對象地址之用。
在某些架構下,模式指示寄存器(也稱為“機器指示寄存器”)儲存和設置跟處理器自己有關的數據。由于他們的意圖目的是附加到特定處理器的設計,因此他們并不被預期會成微處理器世代之間保留的標準。
有關從 隨機存取存儲器 提取信息的寄存器與CPU(位于不同芯片的儲存寄存器集合)
存儲器緩沖寄存器(Memory buffer register)
存儲器數據寄存器(Memory data register)
存儲器地址寄存器(Memory address register)
存儲器型態范圍寄存器(Memory Type Range Registers)
寄存器定義
它是用來存放數據的一些小型存儲區域,用來暫時存放參與運算的數據和運算結果。其實寄存器就是一種常用的時序邏輯電路,但這種時序邏輯電路只包含存儲電路。寄存器的存儲電路是由鎖存器或觸發器(一般用D觸發器構成) 構成的,因為一個鎖存器或觸發器能存儲1位二進制數,所以由N個鎖存器或觸發器可以構成N位寄存器。寄存器廣泛地用于數字系統和數字計算機中。
寄存器分類
寄存器主要分并行寄存器和移位寄存器兩種。并行寄存器是并行輸入并行輸出寄存器。移位寄存器除具寄存器的功能外,所存儲的數碼在時鐘脈沖的作用下還可以移位。根據數碼的移位方向分為左移寄存器和右移寄存器。左移寄存器是指在時鐘脈沖的作用下,低位寄存器的數碼送給高位寄存器,作為高位寄存器的次態輸出;右移寄存器是指在時鐘脈沖的作用下,高位寄存器的數碼送給低位寄存器,作為低位寄存器的次態輸出。
寄存器的主要技術
1. 重命名技術
寄存器重命名,是CPU在解碼過程中對寄存器進行重命名,解碼器把“其它”的寄存器名字變為“通用”的寄存器名字,本質上是通過一個表格把x86寄存器重新映射到其它寄存器,這樣可以讓實際使用到的寄存器遠大于8個。這樣做的好處除了便于前面指令發生意外或分支預測出錯時取消外,還避免了由于兩條指令寫同一個寄存器時的等待。 2. 亂序執行技術
采用亂序執行技術的目的是為了使CPU內部電路滿負荷運轉并相應提高了CPU運行程序的速度。這好比請A、B、C三個名人為春節聯歡晚會題寫橫幅“春節聯歡晚會”六個大字,每人各寫兩個字,如果這時在一張大紙上按順序由A寫好“春節”后再交給B寫“聯歡”,然后再由C寫“晚會”,那么這樣在A寫的時候,B和C必須等待,而在B寫的時候C仍然要等待而A已經沒事了。但如果采用三個人分別用三張紙同時寫的做法,那么B和C都不必等待就可以同時各寫各的了,甚至C和B還可以比A先寫好也沒關系(就像亂序執行),但當他們都寫完后就必須重新在橫幅上按“春節聯歡晚會”的順序排好(自然可以由別人做,就象CPU中亂序執行后的重新排列單元)才能掛出去。
寄存器的分類寄存器主要用途
通用寄存器數據
寄存器AX乘、除運算,字的輸入輸出,中間結果的緩存
AL字節的乘、除運算,字節的輸入輸出,十進制算術運算
AH字節的乘、除運算,存放中斷的功能號
BX存儲器指針
CX串操作、循環控制的計數器
CL移位操作的計數器
DX字的乘、除運算,間接的輸入輸出
變址
寄存器SI存儲器指針、串指令中的源操作數指針
DI存儲器指針、串指令中的目的操作數指針
變址
寄存器BP存儲器指針、存取堆棧的指針
SP堆棧的棧頂指針
指令指針IP/EIP
標志位寄存器Flag/EFlag
32位
CPU的
段寄存器16位CPU的
段寄存器ES附加段寄存器
CS代碼段寄存器
SS堆棧段寄存器DS數據段寄存器
新增加的
段寄存器FS附加段寄存器GS附加段寄存器
?
非常好我支持^.^
(35) 100%
不好我反對
(0) 0%
相關閱讀:
- [電子說] 學習STM32F103的ADC功能 2023-10-24
- [電子說] 學習STM32F103的DAC功能 2023-10-24
- [電子說] 學習STM32F103的定時器功能 2023-10-24
- [電子說] STM32基礎知識:定時器的PWM輸出功能 2023-10-24
- [電子說] 既然ODR能控制管腳高低電平,為什么還需要BSRR寄存器呢? 2023-10-24
- [電子說] ARM系列-P Channel簡析 2023-10-24
- [控制/MCU] 基于STM32F429芯片的單片機芯片內存映射圖 2023-10-23
- [電子說] 軟硬件交互的角度將中斷的知識梳理 2023-10-22
( 發表人:admin )