愛伊米

什麼是暫存器、累加器、暫存器?它們有什麼區別?

一、什麼是暫存器

暫存器,是積體電路中非常重要的一種儲存單元,通常由觸發器組成。在積體電路設計中,暫存器可分為電路內部使用的暫存器和充當內外部介面的暫存器這兩類。

什麼是暫存器、累加器、暫存器?它們有什麼區別?

內部暫存器不能被外部電路或軟體訪問,只是為內部電路的實現儲存功能或滿足電路的時序要求。而介面暫存器可以同時被內部電路和外部電路或軟體訪問,CPU中的暫存器就是其中一種,作為軟硬體的介面,為廣泛的通用程式設計使用者所熟知。

暫存器的用途

可將暫存器內的資料執行算術及邏輯運算。

存於暫存器內的地址可用來指向記憶體的某個位置,即定址。

可以用來讀寫資料到電腦的周邊裝置。

二、什麼是累加器

在中央處理器中,累加器 (accumulator) 是一種暫存器,用來儲存計算產生的中間結果。如果沒有像累加器這樣的暫存器,那麼在每次計算 (加法,乘法,移位等等) 後就必須要把結果寫回到 記憶體,也許馬上就得讀回來。然而存取主存的速度是比從算術邏輯單元到有直接路徑的累加器存取更慢。

累加器的作用

在運算器中,累加器是專門存放算術或邏輯運算的一個運算元和運算結果的暫存器。能進行加、減、讀出、移位、迴圈移位和求補等操作。是運算器的主要部分。

在中央處理器CPU中,累加器(accumulator)是一種暫存器,它用來儲存計算所產生的中間結果。如果沒有像累加器這樣的暫存器,那麼在每次計算(加法,乘法,移位等等)後就必須要把結果寫回到記憶體,然後再讀回來。然而存取主記憶體的速度是比從數學邏輯單元(ALU)到有直接路徑的累加器存取更慢。

在組合語言程式中,累加器 —— AX是一個非常重要的暫存器,但在程式中用它來儲存臨時資料時,最後將其轉存到其它暫存器或記憶體單元中,以防止在其它指令的執行過程中使其中的資料被修改,從而得到不正確的結果,為程式的除錯帶來不必要的麻煩。

三、什麼是暫存器

暫存器是用來暫存由資料匯流排或通用寄存的東西。它是中央處理器內的其中組成部分。 暫存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、 資料和位址 。

暫存器結構組成

在中央處理器的控制部件中,包含的暫存器有指令暫存器 (IR)和程式計數器 (PC)。在中央處理器的算術及邏輯部件中,包含的暫存器有累加器 (ACC)。

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

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

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

暫存器的分類

資料暫存器 —— 用來儲存整數數字(參考以下的浮點暫存器)。在某些簡單/舊的CPU,特別的資料暫存器是累加器 ,作為數學計算之用。

位址暫存器 —— 持有記憶體位址,以及用來存取記憶體 。在某些簡單/舊的CPU裡,特別的位址暫存器是索引暫存器 (可能出現一個或多個)。

通用目的暫存器 ( GPR s) —— 可以儲存資料或位址兩者,也就是說他們是結合資料/位址暫存器的功用。

浮點暫存器 ( FPR s) —— 用來儲存浮點數字。

常數暫存器 —— 用來持有唯讀的數值(例如0、1、圓周率等等)。

向量暫存器 —— 用來儲存由向量處理器執行SIMD指令所得到的資料。

特殊目的暫存器 —— 儲存CPU內部的資料,像是程式計數器 (或稱為指令指標),堆疊暫存器、以及狀態暫存器 (或稱微處理器狀態字組)。

指令暫存器 ( 英語 :instrucTIon register ) —— 儲存現在正在被執行的指令

索引暫存器 ( 英語 :Index_register ) —— 是在程式執行使用來更改運算元位址之用。

四、累加器是暫存器嗎?

累加器的符號是A,顧名思義,其意思是加,但是其除了能做累加器外,(A)還能做暫存器。對於累加器,有一些特別的指令是專門針對累加器的,比如在8086中的RL,以及mul等指令,而在51微控制器中RL對應的暫存器只能是A,總之A是個很特殊的暫存器,除了能做暫存器還能作累加器。

五、暫存器、累加器、暫存器有什麼區別?

暫存器是CPU內部儲存單元,即暫存器是CPU的組成部分。暫存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、資料和位址等。

在CPU內部,累加器 (accumulator) 是一種暫存器,所有數學運算必須透過它進行傳遞和運算。

提到暫存器要從暫存器與儲存器來講:暫存器是CPU裡的儲存單元,與CPU離得近,所以CPU在運算時通常都會用暫存器當中轉站。儲存器是在CPU外部的儲存器,例如,RAM、ROM。

暫存器顧名思義,就是暫時存放一定數量資料暫存器或儲存器。例如,目標暫存器和結果暫存器都已有資料,需要第三個資料輸入;程式設計時某一邏輯訊號經常多次使用,中間結果需要暫時記憶。