x86和x64架構(gòu)是指英特爾和AMD創(chuàng)建的兩種使用最廣泛的指令集架構(gòu)(ISA)。ISA指定機(jī)器代碼的行為,并定義軟件如何控制CPU。ISA是硬件和軟件接口,定義了CPU可以做什么以及如何做。
在本文中,您將了解x64和x86體系結(jié)構(gòu)之間的區(qū)別。
什么是x86架構(gòu)?
x86是一種用于計(jì)算機(jī)處理器的ISA,最初由英特爾于1978年開(kāi)發(fā)。x86架構(gòu)基于英特爾的8086(因此得名)微處理器及其8088變體。起初,它是用于16位處理器的16位指令集,后來(lái)發(fā)展到32位指令集。
位數(shù)表示CPU每個(gè)周期可以處理多少信息。例如,32位CPU每個(gè)時(shí)鐘周期最多可傳輸32位數(shù)據(jù)。
由于其能夠在筆記本電腦、家用PC和服務(wù)器等幾乎任何計(jì)算機(jī)上運(yùn)行,x86架構(gòu)在眾多微處理器制造商中變得流行起來(lái)。
x86架構(gòu)最大的限制是它最多可以處理4096MB的RAM。由于支持的組合總數(shù)為2^32(4,294,967,295),因此32位處理器具有42.9億個(gè)內(nèi)存位置。每個(gè)位置存儲(chǔ)一個(gè)字節(jié)的數(shù)據(jù),相當(dāng)于大約4GB的可訪問(wèn)內(nèi)存。今天,術(shù)語(yǔ)x86表示任何能夠運(yùn)行x86指令集的32位處理器。
注意:選擇正確的基礎(chǔ)架構(gòu)后,了解單核和雙核處理器服務(wù)器之間的區(qū)別,并滿足組織的需求。
什么是x64架構(gòu)?
x64(x86-64的縮寫(xiě))是基于x86的指令集架構(gòu),擴(kuò)展為啟用64位代碼。它于2000年首次發(fā)布,引入了兩種操作模式-64位模式和兼容模式,允許用戶運(yùn)行16位和32位應(yīng)用程序。
由于整個(gè)x86指令集仍然在x64指令集中實(shí)現(xiàn),因此較舊的可執(zhí)行文件運(yùn)行幾乎沒(méi)有性能損失。
x64體系結(jié)構(gòu)支持比x86體系結(jié)構(gòu)更多的虛擬和物理內(nèi)存,允許應(yīng)用程序在內(nèi)存中存儲(chǔ)大量數(shù)據(jù)。此外,x64將通用寄存器的數(shù)量擴(kuò)展到16個(gè),從而提供了進(jìn)一步的增強(qiáng)和功能。
x64體系結(jié)構(gòu)總共可以使用2^64字節(jié),相當(dāng)于160億千兆字節(jié)(16EB)的內(nèi)存。更高的資源利用率使其適合為需要訪問(wèn)大量資源的超級(jí)計(jì)算機(jī)和機(jī)器供電。x64架構(gòu)允許CPU每個(gè)時(shí)鐘周期處理64位數(shù)據(jù),遠(yuǎn)遠(yuǎn)超過(guò)x86。
x86與x64
雖然這兩種體系結(jié)構(gòu)類(lèi)型都基于32位集,但一些關(guān)鍵差異使它們適用于不同的用途。它們之間的主要區(qū)別在于每個(gè)時(shí)鐘周期可以處理的數(shù)據(jù)量和處理器的寄存器寬度。x86和x64指令集體系結(jié)構(gòu)之間的主要區(qū)別。
處理器將常用數(shù)據(jù)存儲(chǔ)在寄存器中,以便快速訪問(wèn)。x86體系結(jié)構(gòu)上的32位處理器具有32位寄存器,而64位處理器具有64位寄存器。因此,x64允許CPU存儲(chǔ)更多數(shù)據(jù)并更快地訪問(wèn)它。寄存器寬度還決定了計(jì)算機(jī)可以使用的內(nèi)存量。
下表概述了x86和x64體系結(jié)構(gòu)集之間的主要區(qū)別:
ISA
x86
x64
初始版本
1978年推出。
2000年推出。
廠家
英特爾
AMD
起源
基于英特爾 8086 處理器。
作為 x86 體系結(jié)構(gòu)的擴(kuò)展而創(chuàng)建。
位量
32 位體系結(jié)構(gòu)。
64 位體系結(jié)構(gòu)。
可尋址空間
4 千兆字節(jié)。
16 EB.
內(nèi)存限制
4 GB(實(shí)際可用內(nèi)存 3.2 GB)。
160 億 GB。
速度
與 x64 相比,速度更慢且功能更弱。
允許高速處理大型整數(shù)集;本質(zhì)上比 x86 快。
數(shù)據(jù)傳輸
支持通過(guò) 32 位總線一次性并行發(fā)送 32 位。
支持通過(guò) 64 位數(shù)據(jù)總線并行傳輸更大的數(shù)據(jù)塊。
存儲(chǔ)
利用更多寄存器來(lái)拆分和存儲(chǔ)數(shù)據(jù)。
以較少的寄存器存儲(chǔ)大量數(shù)據(jù)。
應(yīng)用支持
不支持 64 位應(yīng)用和程序。
支持 64 位和 32 位應(yīng)用和程序。
操作系統(tǒng)支持
Windows XP, Vista, 7, 8, Linux.
Windows XP Professional,Windows Vista,Windows 7,Windows 8,Windows 10,Linux,Mac OS。
特征
每個(gè)架構(gòu)集都有定義它的功能,并在特定用例中賦予它優(yōu)勢(shì)。以下列表展示了x64和x86的功能:
x86
它使用復(fù)雜的指令集計(jì)算架構(gòu)(CISC)。
復(fù)雜的指令需要多個(gè)周期才能執(zhí)行。
x86具有更多可用寄存器,但內(nèi)存較少。
設(shè)計(jì)有較少的管道,但它可以處理復(fù)雜的地址。
使用硬件方法優(yōu)化系統(tǒng)性能-x86依靠物理組件來(lái)補(bǔ)償內(nèi)存不足。
使用基于軟件的DEP(數(shù)據(jù)執(zhí)行保護(hù))。
x64
具有64位整數(shù)功能,向后兼容32位應(yīng)用程序。
(理論上的)虛擬地址空間為2^64字節(jié)(16EB)。但是,目前在現(xiàn)實(shí)生活中僅使用理論16EB范圍的一小部分-大約128TB。
x64通過(guò)將整個(gè)文件映射到進(jìn)程的地址空間來(lái)處理大型文件。
比x86更快,因?yàn)樗哂懈斓牟⑿刑幚怼?4位內(nèi)存和數(shù)據(jù)總線以及更大的寄存器。
支持在多個(gè)地址空間上同時(shí)操作大文件。此外,x64同時(shí)模擬兩個(gè)x86任務(wù),并提供比x86更快的體驗(yàn)。
更有效和高效地加載指令。
使用硬件支持的DEP(數(shù)據(jù)執(zhí)行保護(hù))。
應(yīng)用
由于它們的功能不同,并且在資源訪問(wèn)、速度和處理能力方面存在差異,因此每個(gè)體系結(jié)構(gòu)集用于不同的目的:
x86
世界上許多PC仍然基于x86操作系統(tǒng)和CPU。
用于游戲機(jī)。
云計(jì)算段仍然使用x86架構(gòu)。
較舊的應(yīng)用程序和程序通常在32位體系結(jié)構(gòu)上運(yùn)行。
它更適合仿真。
32位仍然是音頻制作中的首選,因?yàn)樗c較舊的音頻設(shè)備兼容。
x64
越來(lái)越多的PC使用64位CPU和基于x64體系結(jié)構(gòu)的操作系統(tǒng)。
所有現(xiàn)代移動(dòng)處理器都使用x64架構(gòu)。
它用于為超級(jí)計(jì)算機(jī)提供動(dòng)力。
用于視頻游戲機(jī)。
虛擬化技術(shù)基于x64體系結(jié)構(gòu)。
它更適合較新的游戲引擎,因?yàn)樗俣雀?,性能更好?
局限性
雖然這兩個(gè)ISA都有局限性,但x64是一種更新、更完善的體系結(jié)構(gòu)類(lèi)型。下面列出了兩種體系結(jié)構(gòu)的限制:
x86
它具有有限的可尋址內(nèi)存池。
與x64相比,處理速度較低。
供應(yīng)商不再為32位操作系統(tǒng)開(kāi)發(fā)應(yīng)用程序。
現(xiàn)代CPU需要64位操作系統(tǒng)。
系統(tǒng)上的所有設(shè)備(視頻卡、BIOS等)共享可用的RAM,為操作系統(tǒng)和應(yīng)用程序留下更少的內(nèi)存。
x64
它不能在較舊的舊設(shè)備上本機(jī)運(yùn)行。
它的高性能和速度通常會(huì)消耗更多的功率。
64位驅(qū)動(dòng)程序不太可能可用于較舊的系統(tǒng)和硬件。
某些32位軟件與64位體系結(jié)構(gòu)不完全兼容。
如何檢查您的計(jì)算機(jī)是x64還是x86?
如果您擁有過(guò)去10-15年購(gòu)買(mǎi)的PC,則它可能在x64體系結(jié)構(gòu)上運(yùn)行。請(qǐng)按照以下步驟檢查您的電腦是32位還是64位:
步驟1:打開(kāi)設(shè)置
在 Windows 10 上,按
Windows 鍵并單擊
設(shè)置圖標(biāo)。