計算機字、字長理解

bamboogz99發表於2009-02-23

在計算機中作為一個整體被存取、傳送、處理的二進位制數字符串叫做一個字或單元,每個字中二進位制位數的長度,稱為字長

一個字由若干個位元組組成,不同的計算 機系統的字長是不同的,常見的有8位、16位、32位、64位等,字長越長,計算機一次處理的資訊位就越多,精度就越高,字長是計算機效能的一個重要指標

 

目前主流微機正在由32位機向64位機轉變。


注意字與字長的區別,字是單位,而字長是指標,指標需要用單位去衡量。正象生活中重量與公斤的關係,公斤是單位,重量是指標,重量需要用公斤加以衡量。

 

 

如果說某計算機系統的字長為32bits,那意味著:

1. CPU通用資料匯流排的寬度為32bits;

2. CPU內部資料暫存器位數為32bits;

3. 這臺機器一次能做處理,運算的最長位元組的能力32bits;

 

此外,字長對軟體/數字的影響:

1. 整數 – 計算機處理的整數值通常可以有若干種不同的長度,但是其中總有一種正好是該構架的字長。

2. 浮點數 – 計算機處理的浮點數通常是一個字長或字長的倍數。

3. 地址 – 計算機處理的儲存器地址必須有足夠的尺寸,以便可以表示需要的數值範圍,但是又不能過大。經常使用的尺寸是字,不過也可以是字的倍數或分數。

4. 儲存器-處理器傳送 – 當處理器從儲存器子系統讀取資料至暫存器,或者,寫暫存器資料到儲存器,傳送的資料通常是字。

5. 編址單位 – 在一個給定的構架中,連續的地址值對應連續的儲存器單位;該單位就是編址單位。在大部分計算機中,這個單位或者是一個字元(例如:位元組)或者是一個字;

6. 指令機器指令通常是字長的分數或倍數。因為指令和資料經常共享同一個儲存子系統,所以自然作出這樣的選擇。而在哈佛大學架構(Harvard architecture)中,指令和資料的長度並不需要有關聯。

 

...

 

字長直接反映了一臺計算機的計算精度,為適應不同的要求及協調運算精度和硬體造價間的關係,大多數計算機均支援變字長運算,即機內可實現半字長、全字長(或單字長)和雙倍字長運算。

 

字元的尺寸對於字長的選擇也有影響。隨著IBM360系統的引入——該系統使用8位字元,並支援大小寫字母——標準的字元(確切地說:位元組)尺寸也轉變成為8位。從那以後,字長也自然變成了8的倍數,16、32、64位字長被廣泛使用。

 

Ref: http://zh.wikipedia.org/字

相關文章