暫存器和記憶體之間的比較

2021-10-05 21:55:46 字數 836 閱讀 4490

計算機的儲存層次之中,暫存器最快,記憶體其次,最慢的是硬碟

同樣是電晶體儲存裝置,為什麼暫存器比記憶體快呢?

距離不是主要因素,但是最好懂,所以要放在前面說。記憶體距離cpu比較遠,所以要耗費更長時間讀取。

以3ghz的cpu為例,電流每秒鐘可以振盪30億次,每次耗時約0.33納秒。光在1納秒的時間內,可以前進30厘公尺。也就是說,在cpu的乙個時鐘週期內,光可以前進10厘公尺。因此如果記憶體距離cpu超過5厘公尺,就不能在乙個時鐘週期內完成資料的讀取,這還沒有考慮硬體的限制和電流實際上達不到光速。相比之下,暫存器在cpu內部,當然讀起來快一點。

(之所以是5厘公尺,是因為要計算的是往返的路程。)

蘋果公司推出的iphone5s,cpu是a7,暫存器有6000多位(31個64位暫存器,加上32個128位暫存器)。而iphone5s記憶體是1gb,約為80億位(bit)。這意味著,高效能、高成本、高耗電的設計可以用在暫存器上,反正只有6000多位,而不能用在記憶體上。

暫存器的工作方式比較簡單,只有兩步:

找到相關的位

讀取這些位

記憶體的工作方式就比較複雜了:

(1) 找到資料指標。(指標可能存放在暫存器內,所以這一步就已經包括了暫存器的全部工作了。)

(2) 將指標送往記憶體管理單元(mmu),由mmu將虛擬的記憶體位址翻譯成實際的實體地址。

(3)將實體地址送往記憶體控制器(memory controller),由記憶體控制器找出該位址在哪一根記憶體插槽上。

(4)確定資料在哪乙個記憶體塊上,從該塊讀取資料。

(5)資料先送回記憶體控制器,再送回cpu,然後開始使用。

暫存器 快取 記憶體之間的區別

簡單的講 暫存器就是cpu直接拿他裡面寄存的東西直接來進行計算操作的,它就是cpu的一部分。暫存器是有限存貯容量的高速存貯部件,它們可用來暫存指令 資料和位址。在 處理器的控制部件中,包含的暫存器有指令暫存器 ir 和程式計數器 pc 在 處理器的算術及邏輯部件中,包含的暫存器有累加器 acc 快取...

儲存 暫存器和記憶體

計算機儲存塔狀結構,暫存器最快,記憶體其次,最慢的是硬碟 同樣是電晶體儲存裝置,為什麼暫存器比記憶體快?一 距離不同 距離不是主要因素,但是最好理解,記憶體離cpu比較遠,所以要耗費更長時間讀取。以3ghz的cpu為例,電流每秒鐘 可以振盪30億次,每次耗時大約為0.33納秒。光在1納秒的時間內,可...

通用暫存器和記憶體

計算機在執行時,需要提供資料的容器 容器由記憶體和cpu提供,記憶體提供的容器比較多 cpu提供的容器較少但其中的資料計算速度快 cpu提供的容器就是暫存器,暫存器有特定的資料寬度,決定了該暫存器儲存資料的範圍 1.常用的32位暫存器 32位通用暫存器還可以拆分來使用 將低16位當做16位暫存器 一...