32位計算機記憶體定址寬度2的32次方等於4294967296bit不等於4G Byte啊單位是位,是位元組

時間 2021-10-25 21:56:28

1樓:紅掌櫃珠寶

32位的作業系統理論上最多支援4gbytes是沒問題的。

1bytes(位元組)=8bits(字位)也是沒問題的。你存在概念性錯誤,你的計算方案應該是以cup的32位數來計算就只有2^32bits= 512mbyte,然而2^32byte=4gb。

首先你要區分32位作業系統和32位的處理器(cpu)的區別和聯絡。

(一)32位cpu每次可以處理32個字位,即32bits=4bytes。每乙個位元組都有乙個位址,其中包含了8個字位。32位cpu有32跟位址線,位址線決定了定址範圍的能力。

每一根線都決定0和1兩個位址,那麼兩根線就會決定00,01,10,11這四個位址,依次類推,32根線總共會決定出2^32次方個位置。這樣計算是沒有問題的。每乙個位置都是1byte,這是記憶體的基本單位,所以32位作業系統配32位cpu,理論上可以尋找4gb的位址。

由於硬體等原因,系統顯示會不到4g。

(二)32位作業系統與64位cpu的搭配。64位cpu有64根位址匯流排,理論支援2^32/1024^3 g的記憶體,這是乙個很大的數字,但是實際上我們市場的電腦目前遠遠達不到這個理論記憶體的萬分之一。目前64位也就是能支援120g的記憶體。

但是如果64位cpu和32位作業系統搭配,也僅僅會支援4g的記憶體。因為在32位系統下,僅有32根位址線工作。

(三)定址範圍是由位址線個數確定的,而不是cpu位數確定的。cpu的位址匯流排根數決定了能找到多少個位元組(byte),資料匯流排的寬度決定了能夠一次傳送多少個二進位制位(bit) 。希望你能明白其中的關係,不要把位址線直接和字位(bit)聯絡在一起。

2樓:

32位系統,系統定址範圍就是2^32 = 4294967296 位, 一般的文件都說 32位支援最大4gb記憶體

但是 4294967296 位(bit) = 536870912 位元組(byte) = 524288 千位元組 (kb) = 512mb

2^32 = 4294967296 這個本身就是byte了,不用再去除以8了。

每個記憶體位址裡都是8位能放乙個位元組。

所謂16位、32位、64位等術語有時指匯流排寬度,有時指指令寬度(在定長指令集中),而在作業系統理論中主要是指記憶體定址的寬度。如果記憶體的定址寬度是16位,那麼每乙個記憶體位址可以用16個二進位制位來表示,也就是說可以在64kb的範圍內定址。同樣道理32位的寬度對應4gb的定址範圍,64位的寬度對應16 exabyte的定址範圍。

記憶體定址範圍並非僅僅是對作業系統而言的,其他型別的軟體的設計有時也會被定址範圍而影響。但是在作業系統的設計與實現中,定址範圍卻有著更為重要的意義。 在早期的16位作業系統中,由於64kb的定址範圍太小,大都都採用「段」加「線性位址」的二維平面位址空間的設計。

分配記憶體時通常需要考慮「段置換」的問題,同時,應用程式所能夠使用的位址空間也往往有比較小的上限。 在32位作業系統中, 4gb的定址範圍對於一般應用程式來說是綽綽有餘的,因而,通常使用一維的線性位址空間,而不使用「段」。 64位計算與32位計算的最大區別在於「定址能力」和「資料處理能力」。

舉乙個簡單的例子:乙個5位的小計算器能夠計算的最大數字範圍是「99,999」,對於日常計算家用、買菜這樣的工作應該夠用了,但是對於銀行、商場、科研、設計等需要處理「大量」、「複雜」資料的場合這樣的計算器顯然不能勝任,需要10位甚至12位的計算器。64位計算平台基於64位長的「暫存器」,提供比32位更大的資料頻寬和定址能力。

面對今天日益複雜的應用程式和日益龐大的資料量,64位伺服器的普及應用愈來愈迫切。

3樓:匿名使用者

注意記憶體讀寫都是位元組定址的。你按位元組算是相等的呀。

最近學習stm32,發現乙個奇怪的問題,32位的系統,儲存器位址空間應該是2的32次方bit,怎麼計算,都是4gbit

4樓:火箭炮

你的演算法沒問題,你的理解有問題!32位的作業系統理論上最多支援4gbytes是沒問題的。

1bytes(位元組)=8bits(字位)也是沒問題的。你存在概念性錯誤,你的計算方案應該是以cup的32位數來計算就只有2^32bits= 512mbyte,然而2^32byte=4gb。

首先你要區分32位作業系統和32位的處理器(cpu)的區別和聯絡。

(一)32位cpu每次可以處理32個字位,即32bits=4bytes。每乙個位元組都有乙個位址,其中包含了8個字位。32位cpu有32跟位址線,位址線決定了定址範圍的能力。

每一根線都決定0和1兩個位址,那麼兩根線就會決定00,01,10,11這四個位址,依次類推,32根線總共會決定出2^32次方個位置。這樣計算是沒有問題的。每乙個位置都是1byte,這是記憶體的基本單位,所以32位作業系統配32位cpu,理論上可以尋找4gb的位址。

由於硬體等原因,系統顯示會不到4g。

(二)32位作業系統與64位cpu的搭配。64位cpu有64根位址匯流排,理論支援2^32/1024^3 g的記憶體,這是乙個很大的數字,但是實際上我們市場的電腦目前遠遠達不到這個理論記憶體的萬分之一。目前64位也就是能支援120g的記憶體。

但是如果64位cpu和32位作業系統搭配,也僅僅會支援4g的記憶體。因為在32位系統下,僅有32根位址線工作。

(三)定址範圍是由位址線個數確定的,而不是cpu位數確定的。cpu的位址匯流排根數決定了能找到多少個位元組(byte),資料匯流排的寬度決定了能夠一次傳送多少個二進位制位(bit) 。希望你能明白其中的關係,不要把位址線直接和字位(bit)聯絡在一起。

5樓:

簡單的說32位系統就是指位址匯流排是32位的的系統。所謂的32位與64位實際上是指計算機的定址空間大小,也就是在乙個時鐘頻率動作下尋找記憶體做出多少位的計算動作。2的5次方是32,而6次方則是64,對於採用二進位制的計算機運算來說,定址位數增加了,效能就能大幅度躍公升。

4gb記憶體依然是安裝32位處理器計算機的瓶頸,因為它定址和編碼範圍偏小,只能適用於低端、小規模應用,一旦業務發展和資料量超過每日500萬條時,系統就很容易出現故障甚至崩潰。64位平台高達180億gb記憶體的定址能力,使它在未來很長一段時間內都可以解決高階應用中儲存器定址的瓶頸。

一般來講32位的cpu對於我們來講是最理性的cpu,對於軟體開發來講足夠了。但是2的32次方 = 4294967296bit = 4g左右。很顯然32位cpu只有4g左右的記憶體定址空間,對於一些伺服器來講4g的記憶體的遠遠不夠的了。

我們需要更加大的記憶體定址空間的話就需要對cpu進公升級。64位cpu就這樣誕生了。

計算機的位址匯流排12位最大可定址的記憶體大小為

可定址記憶體大小為2 12 4k。內容可定址儲存器cam coment addressablememo ry 以內容進行定址的儲存器,是一種特殊的儲存陣列ram。它的主要工作機制就是將乙個輸入資料項與儲存在cam中的所有資料項自動同時進行比較,判別該輸入資料項與cam中儲存的資料項是否相匹配,並輸出...

若某計算機字長為32位,物理記憶體容量為2GB,按位元組編址,則可定址範圍為

16mb的定址空間,16 1024 1024 1 0x00000000至0x00ffffff。1mb 1024 1024 1048576 0x100000,16mb 16 1048576 16777216 0x1000000,因為計算機以0開始計算位址,因此16mb的定址空間,16 1024 102...

我的計算機記憶體需要公升級到多大

如果你問可以公升到多少,那麼最多可以公升到2g 兩根1g的記憶體 不過普通情況下你買2個512的插上就行了,或者直接1根1g。另外兄弟你的硬碟小了點哦。如果支援雙通道 換兩條 512mb 的吧 也可以使用一條1g的 1g的比較貴 如果過兩年就換機器 就來乙個512mb的吧 划算牌子 就選 金士頓 的...