"我們通常說的64位技術是相對于32位而言的,這個位數指的是CPU GPRs(General-Purpose Registers,通用寄存器)的數據寬度為64位,64位指令集就是運行64位數據的指令,也就是說處理器一次可以運行64bit數據。
既:cpu的處理字節指令長度,后者可以在一個時鐘周期內處理一條64bit的數據
從32位到64位,表面上好象只是CPU字長增大了一倍,實際上它使尋址范圍、最大內存容量、數據傳輸和處理速度、數值精度等指標也成倍增加,帶來的結果就是CPU的處理能力得到大幅提升,尤其是對強烈依賴數值運算、存在巨量數據吞吐和需要超大并發處理的應用提升效果非常明顯,如科學計算、人工智能、平面設計、視頻處理、3D動畫和游戲、數據庫以及各種網絡服務器等."
32位機器最大物理內存是4G,64位版本可以處理的物理內存(RAM)在4 GB=(2^32bit)以上,高達128GB
Linux的64位系統只支持64GB內存,這里是人為的內存限制,實際的尋址范圍應該是2^64bit,遠遠超過128GB.
32位編譯器和64位編譯器也有不同,
指針由32bit(4byte)變成了64bit(8byte).
以及long由 32bit變成了64bit(8byte),標準c里面long long才是64bit。
--------------
數值的保存范圍...
byte是一字節
short一般是兩字節//實際上編譯器也會分配DWORD =4 byte的大小
int是四字節
long也是四字節...
(上面說的是VC編譯的,這個多少字節和編譯有關系的...在TC下又有所不同)
---------------
下面的是JAVA的基礎類型
byte的存儲空間1個字節,取值范圍-128~127
short存儲空間2個字節,取值范圍-2的15次方~2的15次方-1
int存儲空間4個字節,取值范圍-2的31次方~2的31次方-1
long存儲空間8個字節,取值范圍-2的63次方~2的63次方-1
其默認值均為0
樓上的,int如果在C和C++中有可能是2個字節起。這一定要說明白!
--------------------
posted on 2011-04-10 13:25
luis 閱讀(591)
評論(0) 編輯 收藏 引用