64位CPU,真的是指地址位嗎?

很多人嘴上常講16位,32位,64位CPU速度如何如何,但概念上很模糊。大多數受眾,以及行業內所謂專家,錯誤地認為,這個位數是指CPU的地址位,這是極端錯誤的。在此釐清一下,做一小科譜。

1,常說的計算機是多少位的,到底指的什麼?

一般講計算機是8/16/32/64位,是指的數據位,而不是地址位。大多數人理解為地址位,如32位,馬上就會說尋址空間為4GB。這是不嚴肅的。照此理論,16位機只有2^16=64K尋址空間嗎?事實上,即使最早的16位機,也有20根地址線,尋世1MB。

2,處理器CPU與數據位有什麼關係?

一般處理器多少位是指通用寄存器的長度,與數據線位數相同。

再次強調,地址線則不需要與之相等。

好比 intel 64 位處理器則是 40 位地址總線,最大支持 1TB 的內存尋址。

32位宏彙編, 32位CPU有4個32位的通用寄存器EAX、EBX、ECX和EDX。所以,32和64表示CPU一次性可以讀/寫的最大位數,在主頻率等外部條件一樣的情況下,理論上64位的執行速度是32位的兩倍。

3,尋址能力決定可支持的最大內存。32位的CPU只能尋址最大4GB的內存,這是因為其地址線也正好是32位。有的廠家做成40位地址線,可支持1TB內存。

4,操作系統向下兼容。即64的CPU可安裝32位的操作系統win10 for32。當然,對CPU來說,是一種浪費,有一半的性能未發揮出來。

5,在win10 for 64系統上開發的app,都是64位的嗎?非也。它還與集成開發及編繹環境IDE有直接關係。現在大分數app都是32位的,64位app很少。原因是軟件開發滯後。



分享到:


相關文章: