定義
字長是指同時參與運算的數的二進制位數,它決定着寄存器、加法器、數據總線等設備的位數, 字長是直接用二進制代碼指令表達的計算機語言,指令是用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的幂乘以字節尺寸。
字長表
有關術語
字
在計算機中,一串數碼作為一個整體來處理或運算的,稱為一個計算機字,簡稱字,字反映計算機一次并行處理的一組二進制數。字通常分為若幹個字節(每個字節一般是8位)。在存儲器中,通常每個單元存儲一個字,因此每個字都是可以尋址的。字的長度用位數來表示。
在計算機的運算器、控制器中,通常都是以字為單位進行傳送的。字在不同的地址出現,其含義是不相同。例如,送往控制器去的字是指令,而送往運算器去的字就是一個數。
字節
字節是指一小組相鄰的二進制數碼。通常是8位作為一個字節。它是構成信息的一個小單位,并作為一個整體來參加操作,比字小,是構成字的單位。在微型計算機中,通常用多少字節來表示存儲器的存儲容量。



















