定義
機器字長是指計算機進行一次整數運算所能處理的二進制數據的位數(整數運算即定點整數運算)。因為計算機中數的表示有定點數和浮點數之分,定點數又有定點整數和定點小數之分,這裡所說的整數運算即定點整數運算。機器字長也就是運算器進行定點數運算的字長,通常也是CPU內部數據通路的寬度。
機器字長反映了計算機的運算精度,即字長越長,數的表示範圍也越大,精度也越高。機器的字長也會影響機器的運算速度。倘若CPU字長較短,又要運算位數較多的數據,那么需要經過兩次或多次的運算才能完成,這樣勢必影響整機的運行速度。
機器字長與主存儲器字長通常是相同的,但也可以不同。不同的情況下,一般是主存儲器字長小於機器字長,例如機器字長是32位,主存儲器字長可以是32位,也可以是16位,當然,兩者都會影響CPU的工作效率。
衡量單位
衡量機器字長的單位可用“位(bit)”,位是計算機內最小的信息單位。8位構成一個“位元組(byte)”,現代計算機的機器字長一般都是8位的整數倍,如8位,16位、32位、64位和128位等,即字長分別為2個位元組、4個位元組或是16個位元組,所以也可以用“位元組”來表示機器字長。字長的值是不固定的,對於不同的CPU,字長的值也可能不一樣。8位的CPU一次只能處理一個位元組,而32位的CPU一次就能處理4個位元組,同理,字長為64位的CPU一次可以處理8個位元組。
一般大型計算機字長為32位或64位;小型計算機字長為16位或32位;微型計算機字長有1位、4位、8位、16位、32位、64位等。目前,市面上計算機的處理器大部分已達到64位,但可能會以32位字長運行,也沒能展式它的字長的優越性,因為它必須與64位軟體(如64位的作業系統等)相輔相成。也就是說,字長受軟體系統的制約,例如,在32位軟體系統中64位字長的在CPU只能當32位用。
影響
對硬體的造價
機器字長對硬體的造價也有較大的影響。它將直接影響加法器(或ALU),數據匯流排以及存儲字長的位數。所以機器字長的確不能單從精度和數的表示範圍來考慮。
對機器的運行速度
機器的字長會影響機器的運行速度。若CPU字長較短,運算數據的位數較多,則需要經過兩次或多次的運算才能完成,這樣將影響整機的運行速度。