2017-03-09 61 views
0

我只是深入研究了32位和64位處理器,並發現一個令人滿意的答案,即32位機器最多隻能存儲2^32個寄存器,因此最多隻能使用4GB左右,因爲它只能跟蹤最大數量的整數。爲什麼32位架構不使用兩個寄存器來存儲等於64位的地址並且可以使用更大的RAM空間

但我想知道,爲什麼不使用兩個寄存器來存儲類似於存儲一個非常大的數字爲1000000000000.

+0

有機器可以做到這一點。它只是非常緩慢 – Vality

回答

1

時如何使用兩個寄存器地址你可以做到這一點使用像LONG數據類型。這隻會溢出到另一個寄存器。唯一的區別是訪問速度和你對這些值所做的操作不是標準的,並且比64位機器需要更多的計算時間。

考慮在32位機器中增加2個LONG。然後,ALU僅適用於32位值,因此它必須單獨執行,這會導致大量不必要的讀取和存儲。

相關問題