32位處理器最大支援4G記憶體,是怎麼算出來的

時間 2021-09-14 12:13:14

1樓:匿名使用者

在使用計算機時,其最大支援的記憶體是由  作業系統 和 硬體 兩方面決定的。

先說一下硬體方面的因素,在上面已經提到了地址匯流排,在計算機中 cpu的地址匯流排數目 決定了cpu 的 定址 範圍,這種由地址匯流排對應的地址稱作為實體地址。假如cpu有32根地址匯流排(一般情況下32位的cpu的地址匯流排是32位,也有部分32位的cpu地址匯流排是36位的,比如用做伺服器的cpu),那麼提供的可定址實體地址範圍 為 232=4gb(在這裡要注意一點,我們平常所說的32位cpu和64位cpu指的是cpu一次能夠處理的資料寬度,即位寬,不是地址匯流排的數目)。自從64位cpu出現之後,一次便能夠處理64位的資料了,其地址匯流排一般採用的是36位或者40位(即cpu能夠定址的實體地址空間為64gb或者1t)。

在cpu訪問其它任何部件的時候,都需要一個地址,就像一個快遞員送快遞,沒有地址他是不知道往**送達的,舉個例子,cpu想從視訊記憶體單元讀取資料,必須知道要讀取的視訊記憶體單元的實際實體地址才能實現讀取操作,同樣地,從記憶體條上的記憶體單元讀取資料也需要知道記憶體單元的實體地址。換句話說,cpu訪問任何儲存單元必須知道其實體地址。

使用者在使用計算機時能夠訪問的最大記憶體不單是由cpu地址匯流排的位數決定的,還需要考慮作業系統的實現。實際上使用者在使用計算機時,程序所訪問到的地址是邏輯地址,並不是真實的實體地址,這個邏輯地址是作業系統提供的,cpu在執行指令時需要先將指令的邏輯地址變換為實體地址才能對相應的儲存單元進行資料的讀取或者寫入(注意邏輯地址和實體地址是一一對應的)。

所以當我們裝了32位的windows作業系統,即使我們買了4gb的記憶體條,實際上能被作業系統訪問到的肯定小於4gb,一般情況是3.2gb左右。假如說地址匯流排位數沒有32位,比如說是20位,那麼cpu能夠定址到1mb的實體地址空間,此時作業系統即使能支援4gb的邏輯地址空間並且假設記憶體條是4gb的,能夠被使用者訪問到的空間不會大於1mb(當然此處不考慮虛擬記憶體技術),所以使用者能夠訪問到的最大記憶體空間是由硬體和作業系統兩者共同決定的,兩者都有制約關係。

對於64位的作業系統,其邏輯地址編碼採用的地址位數是40位,能夠最大支援1t的邏輯地址空間。考慮一種情況,假如cpu是64位的,地址匯流排位數是40位,作業系統也是64位的,邏輯地址編碼採用的地址位數也是40位,記憶體條大小是64gb,那麼是不是記憶體條的64gb全部都能被利用了呢?答案是不一定,因為這裡面還要考慮一個因素就是記憶體控制器,記憶體控制器位於北橋之內(現在基本都是放在cpu裡面了),記憶體控制器的實際連線記憶體的地址線決定了可以支援的記憶體容量,也就是說記憶體控制器與記憶體槽實際連線的地址線如果沒有40位的話,是無法完全利用64gb的記憶體條的儲存空間的。

當然對於記憶體控制器這個問題幾乎可以不用考慮,因為現在大多數的記憶體控制器至少都採用的是40位地址匯流排。

2樓:匿名使用者

我記得好像不是4g,我的32位系統,4g記憶體顯示只支援3.25g的記憶體。

3樓:匿名使用者

2的32次方,2的10次方=1024b=1kb,2的20次方1024kb=1m,2的30次方1024m=1g,結果就是,2的30次方*,2的2次方=,2的32次方=4096m=4g,

***************==

你知道計算機是2進位制,那麼位數代表了cpu每個週期做能處理的位元組數!

4樓:匿名使用者

(1)2的32次方大小的地址就是4g

(2)支援4g記憶體不但需要處理器,還需要作業系統。正確的說法應該是這樣:32位處理器配合32位作業系統最大支援4g記憶體(實際上其它硬體還會佔用部分定址空間,導致32位處理器+32位作業系統只能使用3g左右的記憶體容量)

更進一步的瞭解,請看「定址空間」的含義

(3)多年以前就普及了64位處理器,32位處理器是很古老的硬體,只是最近兩年32位作業系統才開始被64位作業系統逐步取代。

5樓:匿名使用者

2g升到4g的記憶體只有在執行大的程式提速才會明顯,比如大型3d遊戲等,如果是平常看電影或者那些2d遊戲,開qq什麼的就沒什麼感覺了。

至於換64位系統,這個超級不推薦,64位系統相容性太差,而且你用的還是win7,win7就連現在的32位的相容性都還存在著一定的問題,更別說64位的了,其實我們平常的家庭使用者用32位系統就好,和64位沒什麼區別的

32位計算機的最大記憶體為什麼可以達到4g?

6樓:我的鹿叫桃

32位作業系統,配合32位cpu,定址空間位2^32次方,計算出來是4294967296位元組,就是4g,32位系統最大支援4g空間,如果想要32位系統支援4g以上空間的話,就要用pae的特殊核心,採用特殊方式訪問,

但是系統效率會比原生的64位系統低。

64位作業系統配合64位cpu,定址空間是2^64次方,計算出來是18446744073709551616位元組,換算一下4g個g,太大了,反正是n多g,一輩子也用不完。當然這是64位系統的理論最大記憶體支援,實際上誰也用不了這麼大記憶體,

反正如果你的系統是64位的,cpu是64位的,那麼隨便插個8g,16g記憶體是肯定能支援的。

"32位計算機有32根資料線"。。。。。。。這是你認識的一個錯誤,軟體定址怎麼會扯到有32根資料線呢?是**有32根資料線?

一個儲存單元就應該有4個位元組,這四個位元組就是定址的位置,本身就是儲存空間裡的數,怎麼能相乘呢?

7樓:老蓋聊技術

系統32位64位記憶體區別講解,電腦記憶體顯示不全使用4g以上記憶體教程

8樓:申宵蓋致萱

32位的計算機最大可以支援3g記憶體,但現在可以的通過補丁支援4g記憶體了。

9樓:溪貝0號

先宣告:4g的記憶體,總的可用資料位是 2^32 *8 位,沒錯 ,就是4g *8bit ;

但這和匯流排一次呼叫多少沒關係。匯流排是32根,一次呼叫最多就是2的32次方中變換。 1次最小的變換是呼叫1個位元組,沒聽說過呼叫半個位元組的。

所有呼叫的變換都是8bit的倍數,一次呼叫至少1個位元組。 即32根匯流排,有2^32種位元組呼叫,即有2^32*8次方的位呼叫。 由於呼叫最小單位是位元組,所以最大4g.

32位的系統為什麼可支援的最大記憶體是4g?

10樓:匿名使用者

有4294967296種組合方式,在記憶體中如果按1個位元組分配1個地址,那麼最大能分配記憶體就是約4.29g位元組。但實際比這要小些。

11樓:匿名使用者

是因為32位系統只支援32位定址:即2^32(b) = 4* 2^30(b) = 4294967296(b) = 4*2^20(kb) = 4194304(kb) = 4*2 ^10(mb) = 4096(mb) = 4(gb)

而32位windows2003 支援大記憶體內是因為 windows2003有awe功能,通過算容法換算來支援大於4g的記憶體,但效率會變低,沒直接使用64位系統好。 很多32位的xp只看到3點多g的記憶體是因為系統要預留部分給系統自己使用,只顯示3點多g。

12樓:溪貝0號

先宣告:大多數bai人回du答的所謂的32根匯流排有2^32次方的zhi變換,

dao說的對,但沒說專

清楚,準確說是屬,按位元組呼叫是2^32種變換, 按位呼叫就是2^32*8種變換。

再證明:4g的記憶體,總的可用資料位是 2^32 *8 位,沒錯 ,就是4g *8bit 即 4g位元組;

記憶體控制和呼叫的最小單位是1個位元組,也就是8位。(小於8位,什麼也做不了,所以設計的時候就是8位當成一個位元組。 記憶體裡面的暫存器大多也是8個一組的。)

13樓:撞不周山

定址的最小單位是byte而不是bit,所以不用除以8。

右側記憶體表示的地址0、1、2、3、4、5...已經是byte了

14樓:匿名使用者

^2^bai32 = 4 * 2^10 * 2 ^10 *2^10b=4gb

32位x86架構是指個人電腦

du的地址

zhi匯流排是32位的,cpu、內

dao存控制器、作業系統都內是容按32位地址匯流排設計。32位地址匯流排可以支援的記憶體地址**是 4096mb,也就是有4gb的地址**,可以編4gb個地址。這4gb個地址碼正好可以分配給4gb記憶體。

但是,這4gb個地址碼不能全部分配給安裝在主機板上的實體記憶體。因為個人電腦還有很多裝置需要地址**,以便cpu可以根據地址碼找到它們,同時cpu和這些裝置交換資料需要暫時存放資料的儲存器 ——暫存器,這些暫存器也需要地址**。比如硬碟控制器、軟碟機控制器、管理插在pci槽上的 pci卡的pci匯流排控制器,pci-e匯流排控制器和pci-e顯示卡,它們都有暫存器都需要系統分配給它們地址**。

這些地址由系統分配,電腦使用者在使用中感覺不到。這樣一來,當我們為電腦插上總容量為4gb的記憶體時,就有一部分記憶體分配不到地址**而不能使用。

15樓:毀人一道

不是4294967296bit

而是4294967296b

16樓:空心

我不知道誰和你bai說的du32位系統只支援最大zhi4g記憶體,當然xp系統一般最大dao只支援3g多一內點,

但就我所知容道,32位的windows2003,最高的資訊中心版,支援的就遠遠不止4g,達到64g,

你這樣算是不對的,

支援多大的記憶體和當時的技術,成本,和限制有關,基本和演算法無關

32位作業系統最多可以支援多大記憶體

17樓:樊柏源

普通家用版32位作業系統最大支援4gb記憶體。

企業版的32 位作業系統最高可支援32gb記憶體。

資料中心版的32 位作業系統最高支援64gb記憶體。

擴充套件資料

32位作業系統針對的32位的cpu設計。cpu的位是指一次性可處理的資料量是多少,1位元組=8位,32位處理器可以一次性處理4個位元組的資料量,依次類推。

cpu處理計算的時候「資料」和「指令」是不同對待的。8位的cpu,一次只能處理一個8位的「資料」或者一個8位的"指令"。比如'00001101',又比如:

「+1」這個運算,你要先指示cpu做「+」,完成後再輸入「1」資料給cpu。

由於8位的cpu不利於計算機的發展。後來推出了16位的cpu,我們就可以一次處理兩個位元組(16位)的資料了,比如「加1」這個命令。「加」是一個指令,佔用8個位,餘下的8位我們可以存放資料「1」了。

32位的cpu就更加方便了,我們就可以一次處理一個a=a+b這樣的命令了。優點:簡化了軟體設計的複雜度。

缺點:硬體設計更加複雜,計算速度下降。一般來講32位的cpu對於我們來講是最理性的cpu,對於軟體開發來講足夠了,但是記憶體定址空間在2的32次方 = 4294967296byte = 4g左右。

64位處理器和32位處理器都起到了什麼作用或提升那些

就是多了個位數,運算方式不一樣 現在新的cpu都是64位構架 主要是32位系統支援到的記憶體太少了 我記得是3.25g 其他沒多大區別 64位處理器能夠執行64位程式,32位處理器不能,而且64位處理器在執行64位程式時的效率要比執行32位程式高很多。還有就是64位處理器的記憶體才能超過4gb,32...

什麼是64位處理器 有什麼好處嗎,它和32位的有什麼區別

變化有哪般 計算機的位是指計算機一次計算能處理的位數。這個位數越大,當然也就越快。但不是說一定越快 但一般絕不會更慢 這僦像卡車運東西,對於少量東西,不論用大卡車還是小卡車,都是一次,所以速度是相同的,但東西多的時候,大卡車用的次數少,當然會快。那為什麼現在的64位系統並不比32位快呢,問題出在軟體...

手機64位處理器和32位雙通道哪個更實用

不能一概而論,個人認為首先別管處理器是64位的還是32位雙通道的,選一個處理器效能強的最重要,64位處理器及系統是大勢所趨,但是32位硬體再用2 3年是絕對妥妥的 2 3年也該換手機了,到時候是什麼情況再說 很多人在這2 3年不換手機,難道過斷時間軟體 遊戲在32位系統及處理器下就不能安裝和使用了麼...