隨著近來AMD和Intel的64位CPU以及 Microsoft 64位操作系統(tǒng)的相繼發(fā)布,我想來談?wù)凜PU位數(shù)與操作系統(tǒng)位數(shù)的問題,這二者有區(qū)別也有聯(lián)系,操作系統(tǒng)位數(shù)的概念是基于CPU的位數(shù)的。
首先我們從計算機(jī)的信息表示談起。計算機(jī)中的信息分為兩類:控制信息、數(shù)據(jù)信息。控制信息表示:條件、命令、狀態(tài)等。數(shù)據(jù)信息有數(shù)值與非數(shù)值的兩類,非數(shù) 值如:文字、圖像、聲音等。所有這些信息在計算機(jī)中用數(shù)字代碼表示,為了電路表示處理方便,就用二進(jìn)制表示。電路用高電平、低電平表示2個數(shù)碼“1”和 “0”,簡單地可理解為高低電壓或有無電。十進(jìn)制在每個數(shù)位上可用10個數(shù)碼(0—9),二進(jìn)制在每個數(shù)位上可用2個數(shù)碼(0、1)。用二進(jìn)制表示數(shù)和十 進(jìn)制的其實就是一樣,也可進(jìn)行各種運算。計算機(jī)系統(tǒng)的信息從輸入、存儲、處理到輸出就都是用基于二進(jìn)制的電信號表示。如鍵盤的每一個按鍵可用一個數(shù)碼表 示;如鼠標(biāo)可用2個數(shù)碼分別表示水平和垂直的位置;如存儲字符“A”可用數(shù)碼“01100101”表示;如存儲、輸出圖像可將圖像分為很多點,各點用一數(shù) 碼表示其顏色。
所談的位數(shù)就是表示信息的二進(jìn)制數(shù)碼的位數(shù)。位數(shù)越大能表示的信息范圍就越大。如“16位色”就是說能表示的顏色種數(shù)是2的16次冪(65536),32位就有2的32次冪(65536*65536)。
CPU的位數(shù)是指CPU能一次同時寄存和處理二進(jìn)制數(shù)碼的位數(shù),這和CPU中寄存器的位數(shù)對應(yīng)。
CPU為了實現(xiàn)其功能一般設(shè)計了指令集,即是CPU的全部指令,這就是機(jī)器語言。計算機(jī)的所有功能都是基于CPU的指令集。指令集和CPU的位數(shù)是有聯(lián)系 的。如Intel 8086 CPU 是16位,其指令集也是16位。如Intel 80386DX CPU 是32位,其指令集也是32位,但它也保持原16位指令集,這是為了向上兼容。
操作系統(tǒng)的位數(shù)是說其所依賴的指令集的位數(shù)。
計算機(jī)系統(tǒng)一般都應(yīng)有向上兼容性,所以也可有64位CPU上運行32位操作系統(tǒng)、32位CPU上運行16位操作系統(tǒng)的情況。
操作系統(tǒng)位數(shù)應(yīng)該是根據(jù)指針類型的位數(shù)來定的。整數(shù)類型不一定跟位數(shù)相等,CPU位數(shù)準(zhǔn)確地說應(yīng)該是CPU一次能夠并行處理的數(shù)據(jù)寬度,一般就是指數(shù)據(jù)總線寬度。
附:
64位CPU如:AMD Athlon64 、Intel Pentium 4 F
32位CPU如:Intel 80386DX 到 Intel Pentium III 和部分Intel Pentium 4
16位CPU如:Intel 8086、Intel 80286
64位操作系統(tǒng)如:Windows XP Professional x64和Windows Server 2003 x64
32位操作系統(tǒng)如:Windows95、Windows98、Windows NT、Windows 2000、Windows XP
16位操作系統(tǒng)如:DOS
Windows1.0到3.2是運行在DOS上的,不能算是獨立的操作系統(tǒng)。