當前位置:維知科普網 >

教育

> x86 x64區別

x86 x64區別

X86指的是32位系統,32位佔用內存較小,但是不支持大於4G內存。X64指的是64位系統,64位系統支持高達128G內存,如果你的內存比較大就裝64位。

Windowsx64和x32,都是用來形容操作系統的,所以我們在下載操作系統的時候,會存在win x64和x86位系統的選擇。而不同位數的操作系統,對cpu的運算方式產生的影響或者要求亦不同,所以從更深層次的角度來説,windows64和32位是指CPU運算方式的差異。

x86 x64區別

64位的操作系統,按照微軟對系統的設定,家庭版本的win7可以最多支持16G的內存,而專業版和旗艦版的win7最多支持的內存容量可達192G內存。所以如果你電腦擁有超過4G的內存,則建議安裝64位的操作系統,這是這兩者最大的區別。

x64和x86有什麼區別?

x64 和 x86 指的都是操作系統。其中,x64指的是64位操作系統,x86指的是32位操作系統。這是根據處理器芯片架構來進行劃分的。

x86-64 (又稱x64,即英文詞64-bit extended,64位拓展 的簡寫)是x86架構的64位拓展,向後兼容於16位及32位的x86架構。x64於1999年由AMD設計,AMD首次公開64位集以擴展給x86,稱為“ AMD64 ”。其後也為英特爾所採用,現時英特爾稱之為“Intel 64”。

目前的電腦CPU都是基於64位設計,也就是X64,只有很早以前的一些古董CPU才是X86(32位)版本,因此一般我們下載系統版本,是選擇X64,除非是CPU為X86架構,很老的電腦。

對於內存:32位系統最高可支持4G,而64位系統最高可支持16T。

對於操作系統:64位操作系統只能安裝在64位CPU的計算機上,而32位操作系統能夠安裝在32位或64位CPU的計算機上。

軟件兼容性問題:32位系統不能運行64位程序,但是64位系統可以運行32位程序。通常情況下, 32位系統安裝32位軟件,而64位系統安裝64位軟件。

問題來了, 如何查看Windows操作系統多少位呢?

我們只需要鼠標右鍵單擊“此電腦(我的電腦)”選擇【屬性】,出現的界面找到“系統類型”一欄,就可以看到電腦的操作系統位數。

如何查看mac操作系統多少位呢?

打開終端,輸入命令uname -a回車

x86_64 表示系統為64位

i686 表示系統32位

x86和x64處理器有什麼區別?

Linux操作系統中x64和x86的區別如下:

一、寄存器分配的不同

64位有16個寄存器,32位只有8個,32位前8個都有不同的命名,分別是e_,而64位前8個使用r代替e,即r_

32位使用棧幀來作為傳遞的參數的保存位置,而64位使用寄存器,分別用rdi、rsi、rdx、rcx、r8、r9作為第1-6個參數,rax作為返回值

64位沒有棧幀的指針,32位用ebp作為棧幀指針,64位取消了這個設定,rbp作為通用寄存器使用

二、函數調用的不同

x_64的參數通過寄存器傳遞,callq在棧裏存放一個8位的返回地址

許多函數不再有棧幀,只有無法將所有本地變量放在寄存器裏的才會在棧上分配空間

一些寄存器被設計成為被調用者-存儲的寄存器,這些必須在需要改變他們值的時候存儲他們並且之後恢復他們。

三、參數傳遞的不同

6個寄存器用來傳遞參數

剩下的寄存器按照之前的方式傳遞(不過是與rsp相關了,ebp不再作為棧幀指針,並且從rsp開始第7個參數,rsp+8開始第8個,以此類推)

調用時,rsp向下移動8位(存入返回地址),寄存器參數無影響,第7個及之後的參數現在則是從rsp+8開始第7個,rsp+16開始第8個,以此類推

四、棧幀的不同

很多情況下不再需要棧幀,比如在沒有調用別的函數,且寄存器足以存儲參數,那麼就只需要存儲返回地址即可,需要棧幀的情況:

a. 本地變量太多,寄存器不夠

b. 一些本地變量是數組或結構體

c. 函數使用了取地址操作符來計算一個本地變量的地址

d. 函數必須用棧傳送一些參數給另外一個函數

e. 函數需要保存一些由被調用者存儲的寄存器的狀態(以便於恢復)

五、運算速度的不同

64位cpu的數據寬度為64位,64位指令集可以運行64位數據指令,也就是説處理器一次可提取64位數據,比32位提高了一倍,理論上性能會相應提升1倍。

x64和x86的區別

1、兩者一次性處理處理的數據量不一樣:

32位處理器可以一次性處理4個字節的數據量;

而64位處理器可以一次性處理8個字節的數據量。

2、兩者要求配置不同:

32位操作系統則可以安裝在32位(32位CPU)或64位(64位CPU)電腦上。當然,32位操作系統安裝在64位電腦上,其硬件對應64位效能就會大打折扣;

而64位操作系統只能安裝在64位電腦上(CPU必須是64位的)。同時需要安裝64位常用軟件以發揮64位(x64)的最佳性能。

3、尋址能力不同:

32位CPU和操作系統最大隻可支持4G內存;

64位處理器的優勢還體現在系統對內存的控制上。由於地址使用的是特殊的整數,因此一個ALU(算術邏輯運算器)和寄存器可以處理更大的整數,也就是更大的地址,比如,Windows Vistax64Edition支持多達128GB的內存和多達16TB的虛擬內存。

參考資料來源:百度百科-32位操作系統

參考資料來源:百度百科-64位操作系統

標籤: x86 x64
  • 文章版權屬於文章作者所有,轉載請註明 https://wzkpw.com/jy/4gm5mn.html