字長

字長

二進制位數
字長是指同時參與運算的數的二進制位數,它決定着寄存器、加法器、數據總線等設備的位數,因而直接影響着硬件的代價,同時字長标志着計算機的計算精度和表示數據的範圍。[1]為了方便運算,許多計算機允許變字長操作,例如半字長、全字長、雙字長等。一般計算機的字長在8~64位之間,即一個字由1~8個字節組成。微型計算機的字長有8位、準16位、16位、32位、64位等。
    中文名:字長 外文名:word size 所屬學科:計算機科學 解釋:同一時間處理二進制數位數 地位:是CPU的主要技術指标之一

定義

字長是指同時參與運算的數的二進制位數,它決定着寄存器、加法器、數據總線等設備的位數, 字長是直接用二進制代碼指令表達的計算機語言,指令是用0和1組成的一串代碼,它們有一定的位數,并分成若幹段,各段的編碼表示不同的含義,例如某台計算機字長為16位,即有16個二進制數組成一條指令或其它信息。16個0和1可組成各種排列組合,通過線路變成電信号,讓計算機執行各種不同的操作。

簡介

在計算機中各種信息都是用二進制編碼進行存儲,以二進制數的形式進行處理的。一個二進制位稱為一個比特(Bit),8個二進制位稱為一個字節(Byte)。計算機系統中,一般用若幹個字節表示一個數或者一條指令,前者稱為數據字,後者稱為指令字。字長是指同時參與運算的數的二進制位數,它決定着寄存器、加法器、數據總線等設備的位數,因而直接影響着硬件的代價,同時字長标志着計算機的計算精度和表示數據的範圍。為了方便運算,許多計算機允許變字長操作,例如半字長、全字長、雙字長等。一般計算機的字長在8~64位之間,即一個字由1~8個字節組成。微型計算機的字長有8位、準16位、16位、32位、64位等。

在同一時間中處理二進制數的位數叫字長。通常稱處理字長為8位數據的CPU叫8位CPU,32位CPU就是在同一時間内處理字長為32位的二進制數據。二進制的每一們0或1是組成二進制的最小單位,稱為一個字長。

在計算機中,一串數碼作為一個整體來處理或運算的,稱為一個計算機字,簡稱字。字通常分為若幹個字節(每個字節一般是8位)。在存儲器中,通常每個單元存儲一個字,因此每個字都是可以尋址的。字的長度用位數來表示。

在計算機的運算器、控制器中,通常都是以字為單位進行傳送的。字出現在不問的地址其含義是不相同。例如,送往控制器去的字是指令,而送往運算器去的字就是一個數。

字長計算機的每個字所包含的位數稱為字長。根據計算機的不同,字長有固定的和可變的兩種。固定字長,即字長度不論什麼情況都是固定不變的;可變字長,則在一定範圍内,其長度是可變的。

計算的字長是指它一次可處理的二進創數字的數目。計算機處理數據的速率,自然和它一次能加工的位數以及進行運算的快慢有關。如果一台計算機的字長是另一台計算機的兩倍,即使兩台計算機的速度相同,在相同的時間内,前者能做的工作是後者的兩倍。一般地,大型計算機的字長為32―64位,小型計算機為12―32位,而微型計算機為4一16位。字長是衡量計算機性能的一個重要因素。

詳述

在計算機中,一串數碼作為一個整體來處理或運算的,稱為一個計算機字,簡稱字。字通常分為若幹個字節(每個字節一般是8位)。在存儲器中,通常每個單元存儲一個字,因此每個字都是可以尋址的。字的長度用位數來表示。

在計算機的運算器、控制器中,通常都是以字為單位進行傳送的。字出現在不同的地址其含義是不相同。例如,送往控制器去的字是指令,而送往運算器去的字就是一個數。

字長

字長是指計算機的每個字所包含的位數。根據計算機的不同,字長有固定的和可變的兩種。固定字長,即字長度不論什麼情況都是固定不變的;可變字長,則在一定範圍内,其長度是可變的。

計算的字長是指它一次可處理的二進制數字的數目。計算機處理數據的速率,自然和它一次能加工的位數以及進行運算的快慢有關。如果一台計算機的字長是另一台計算機的兩倍,即使兩台計算機的速度相同,在相同的時間内,前者能做的工作是後者的兩倍。一般地,大型計算機的字長為32―64位,小型計算機為16―32位,而微型計算機為4一16位。字長是衡量計算機性能的一個重要因素。

字節

字節是指一小組相鄰的二進制數碼。通常是8位作為一個字節。它是構成信息的一個小單位,并作為一個整體來參加操作,比字小,是構成字的單位。在微型計算機中,通常用多少字節來表示存儲器的存儲容量。

雙倍字長

 雙倍字長是指計算機内部參與運算的數的位數。它決定着計算機内部寄存器、ALU和數據總線的位數,直接影響着機器的硬件規模和造價。雙倍字長直接反映了一台計算機的計算精度,為适應不同的要求及協調運算精度和硬件造價間的關系,大多數計算機均支持變字長運算,即機内可實現半字長、全字長(或單字長)和雙倍字長運算。

微型機的字長通常為4位、8位、16位和32位,64位字長的高性能微型計算機也已推出。

雙倍字長對計算機計算精度的影響:

4位字長:24=16;16位字長:216=65,536=64K

32位字長:232=4,294,967,296=4G;64位字長:264≈1.8445×1019

數據總線DB用于傳送數據信息。數據總線是雙向三态形式的總線,即他既可以把CPU的數據傳送到存儲器或I/O接口等其它部件,也可以将其它部件的數據傳送到CPU。數據總線的位數是微型計算機的一個重要指标,通常與微處理的字長相一緻。例如Intel8086微處理器字長16位,其數據總線寬度也是16位。需要指出的是,數據的含義是廣義的,它可以是真正的數據,也可以指令代碼或狀态信息,有時甚至是一個控制信息,因此,在實際工作中,數據總線上傳送的并不一定僅僅是真正意義上的數據。

地址總線AB是專門用來傳送地址的,由于地址隻能從CPU傳向外部存儲器或I/O端口,所以地址總線總是單向三态的,這與數據總線不同。地址總線的位數決定了CPU可直接尋址的内存空間大小,比如8位微機的地址總線為16位,則其最大可尋址空間為216=64KB,16位微型機的地址總線為20位,其可尋址空間為220=1MB。一般來說,若地址總線為n位,則可尋址空間為2n字節。

控制總線CB用來傳送控制信号和時序信号。控制信号中,有的是微處理器送往存儲器和I/O接口電路的,如讀/寫信号,片選信号、中斷響應信号等;也有是其它部件反饋給CPU的,比如:中斷申請信号、複位信号、總線請求信号、限備就緒信号等。因此,控制總線的傳送方向由具體控制信号而定,一般是雙向的,控制總線的位數要根據系統的實際控制需要而定。實際上控制總線的具體情況主要取決于CPU。

字長的選擇

在設計計算機時,字長的選擇是非常重要的。設計上的考慮傾向于為特定的用途(如地址)設定特定的位長。然而,出于經濟的考慮,又應該僅使用一種尺寸,或者很少的幾種與基本尺寸成倍數或分數(約數)關系的尺寸。這個首選的基本尺寸就成為該構架的字長。 

字符的尺寸對于字長的選擇也有影響。20世紀60年代中期以前,字符大部分以6位存儲;這樣最多允許64個字符,因此不能又大寫字符。由于将字長定義成字符尺寸的倍數在處理時間和存儲空間上都比較劃算,所以這個時期字長也就被定義為6位(在二進制機器上)的倍數。通常的選擇是36位字長,這也是适合于浮點數格式的一個長度。 

随着IBM360系統的引入——該系統使用8位字符,并支持大小寫字母——标準的字符(确切地說:字節)尺寸也轉變成為8位。從那以後,字長也自然變成了8的倍數,16、32、64位字長被廣泛使用。 

各種字長的架構

早期的計算機設計中包括所謂的“可變字長”設計。(原文:Early machine designs included some that used what is often termed avariable word length.——譯者)。在這類設計中,數字操作數沒有固定的長度,它們通過檢查某個特殊字符來判斷是否結束。這樣的機器使用BCD編碼表示數字,例如IBM 702、IBM 705、IBM 7080、IBM 7010、UNIVAC 1050、IBM 1401和IBM 1620。 

大部分這樣的機器一次處理一個存儲單元,因為每條指令和數據占用的數個單元,所以指令将使用數個周期來讀取存儲器。這類機器經常因為這個原因變得非常慢。例如,在IBM 1620 Model I上,取指令需要8個周期,隻是為了讀取12個數字(Model II降低到6個周期,不過如果指令不需要取其中的一個1個地址域的話,可以隻需要4個周期;如果兩個都不需要,則隻需要1個周期)。 

字和字節編址

字長對計算機構架的存儲器模式有很大的影響。特别是:通常選擇字作為存儲器的編址方案,所謂存儲器編址方案就是地址碼能夠指定的最小存儲單位。編号相鄰的存儲器字組,其地址編号相差一。在計算機中這樣很自然,因為它通常總是要處理以字為單位的數據(或者是以字的倍數)。并且具有讓指令可以使用最小的長度來指定一個地址的優點,這樣,就可以減少指令長度或者可以定義更多的指令條數。 

當計算機很大的工作量是用來處理字節時,通常定義字節作為地址編址單位要比字更好。這樣做字符串中的單個字符可以通過地址直接指定。當然,一個字仍然可以被地址訪問,但是比起字編址方案,它的地址将使用更多的位數。在這種組織結構中,字長需要被定義為字符長度的整數倍。這種編址方案在IBM 360中被使用,此後即變成計算機設計中最普遍的方案。 

2的幂

數據常常要占用不同大小的存儲空間,例如,有些數值比其他的數值要求有更高的精度。通常使用的長度是編址單位(以字為單位編址或以字節為單位編址)的倍數,這個倍數常常是的2的幂。這樣做是比較便利的,因為這樣的話,将一個處理對象在數組中的索引值轉化為這個處理對象的地址隻需要進行一個移位操作(這在硬件上隻需要進行布線的變化)而不需要進行乘操作。某些時候這樣的做法還可以避免除操作。因此,一些現代計算機設計使用的字長(或者其他的操作數)是2的幂乘以字節尺寸。

字長表

年份

計算機架構

字長

整數長度

浮點數長度

長度指令

編址單位

字符長度

1941

Zuse Z3

22 b

w

8 b

w

1942

ABC

50 b

w

1944

Harvard Mark I

23 d

w

24 b

1946

(1948)

{1953}

ENIAC

(w/Panel #16)

{w/Panel #26}

10 d

w, 2w

(w)

{w}

(2d, 4d, 6d, 8d)

{w}

1951

UNIVAC I

12 d

w

½w

w

1 d

1952

IAS machine

40 b

w

½w

w

5 b

1952

IBM 701

36 b

½w,w

½w

½w,w

6 b

1952

UNIVAC 60

nd

1d, ... 10d

2d, 3d

1953

IBM 702

nd

0d, ... 511d

5d

d

1 d

1953

UNIVAC 120

nd

1d, ... 10d

2d, 3d

1954

(1955)

IBM 650

(w/IBM 653)

10 d

w

(w)

w

w

2 d

1954

IBM 704

36 b

w

w

w

w

6 b

1954

IBM 705

nd

0d, ... 255d

5d

d

1 d

1954

IBM NORC

16 d

w

w, 2w

w

w

1956

IBM 305

nd

1d, ... 100d

10d

d

1 d

1958

UNIVAC II

12 d

w

½w

w

1 d

1958

SAGE

32 b

½w

w

w

6 b

1958

Autonetics Recomp II

40 b

w, 79 b, 8d, 15d

2w

½w

½w,w

5 b

1959

IBM 1401

nd

1d, ...

d, 2d, 4d, 5d, 7d, 8d

d

1 d

1959

(TBD)

IBM 1620

nd

2d, ...

(4d, ... 102d)

12d

d

2 d

1960

LARC

12 d

w, 2w

w, 2w

w

w

2 d

1960

IBM 1410

nd

1d, ...

d, 2d, 6d, 7d, 11d, 12d

d

1 d

1960

IBM 7070

10 d

w

w

w

w,d

2 d

1960

PDP-1

18 b

w

w

w

6 b

1961

IBM 7030

(Stretch)

64 b

1b, ... 64b,

1d, ... 16d

w

½w,w

b, ½w,w

1 b, ... 8 b

1961

IBM 7080

nd

0d, ... 255d

5d

d

1 d

1962

UNIVAC III

25 b, 6 d

w, 2w, 3w, 4w

w

w

6 b

1962

UNIVAC 1107

36 b

/6w, ⅓w, ½w,w

w

w

w

6 b

1962

IBM 7010

nd

1d, ...

d, 2d, 6d, 7d, 11d, 12d

d

1 d

1962

IBM 7094

36 b

w

w, 2w

w

w

6 b

1963

Gemini Guidance Computer

39 b

26 b

13 b

13 b, 26 b

1963

(1966)

Apollo Guidance Computer

15 b

w

w, 2w

w

1964

CDC 6600

60 b

w

w

¼w, ½w

w

6 b

1965

IBM 360

32 b

½w,w,

1d, ... 16d

w, 2w

½w,w, 1½w

8 b

8 b

1965

UNIVAC 1108

36 b

/6w, ¼w, ⅓w, ½w,w, 2w

w, 2w

w

w

6 b, 9 b

1965

PDP-8

12 b

w

w

w

8 b

1970

PDP-11

16 b

w

2w, 4w

w, 2w, 3w

8 b

8 b

1971

Intel 4004

4 b

w,d

2w, 4w

w

1972

Intel 8008

8 b

w, 2d

w, 2w, 3w

w

8 b

1972

Calcomp 900

9 b

w

w, 2w

w

8 b

1974

Intel 8080

8 b

w, 2w, 2d

w, 2w, 3w

w

8 b

1975

Cray-1

64 b

24 b,w

w

¼w, ½w

w

8 b

1975

Motorola 6800

8 b

w, 2d

w, 2w, 3w

w

8 b

1975

MOS Tech. 6501

MOS Tech. 6502

8 b

w, 2d

w, 2w, 3w

w

8 b

1976

Zilog Z80

8 b

w, 2w, 2d

w, 2w, 3w, 4w, 5w

w

8 b

1978

(1980)

Intel 8086

(w/Intel 8087)

16 b

½w,w, 2d

(w, 2w, 4w)

(2w, 4w, 5w, 17d)

½w,w, ... 7w

8 b

8 b

1978

VAX-11/780

32 b

¼w, ½w,w, 1d, ... 31d, 1b, ... 32b

w, 2w

¼w, ... 14¼w

8 b

8 b

1979

Motorola 68000

32 b

¼w, ½w,w, 2d

½w,w, ... 7½w

8 b

8 b

1982

(1983)

Motorola 68020

(w/Motorola 68881)

32 b

¼w, ½w,w, 2d

(w, 2w, 2½w)

½w,w, ... 7½w

8 b

8 b

1985

ARM1

32 b

w

w

8 b

8 b

1985

MIPS

32 b

¼w, ½w,w

w, 2w

w

8 b

8 b

1989

Intel 80486

16 b

½w,w, 2d

w, 2w, 4w

2w, 4w, 5w, 17d

½w,w, ... 7w

8 b

8 b

1989

Motorola 68040

32 b

¼w, ½w,w, 2d

w, 2w, 2½w

½w,w, ... 7½w

8 b

8 b

1991

PowerPC

32 b

¼w, ½w,w

w, 2w

w

8 b

8 b

2000

IA-64

64 b

8 b, ¼w, ½w,w

½w,w

41 b

8 b

8 b

2002

XScale

32 b

w

w, 2w

½w,w

8 b

8 b

說明:b:位, d: 10進制數,w:該構架的字長,n:變量長度(variable size)

有關術語

在計算機中,一串數碼作為一個整體來處理或運算的,稱為一個計算機字,簡稱字,字反映計算機一次并行處理的一組二進制數。字通常分為若幹個字節(每個字節一般是8位)。在存儲器中,通常每個單元存儲一個字,因此每個字都是可以尋址的。字的長度用位數來表示。 

在計算機的運算器、控制器中,通常都是以字為單位進行傳送的。字在不同的地址出現,其含義是不相同。例如,送往控制器去的字是指令,而送往運算器去的字就是一個數。 

字節

字節是指一小組相鄰的二進制數碼。通常是8位作為一個字節。它是構成信息的一個小單位,并作為一個整體來參加操作,比字小,是構成字的單位。在微型計算機中,通常用多少字節來表示存儲器的存儲容量。

上一篇:堿石灰

下一篇:丁烷

相關詞條

相關搜索

其它詞條