我們下載軟件的時(shí)候,大多數(shù)都會(huì)讓我們選擇X86-64位或者X86-32位,這到底是什么意思呢?
現(xiàn)在我就來(lái)詳細(xì)講解X86-64位或者X86-32位代表的含義。
Inter出廠的第一款CPU的型號(hào)叫8086,后來(lái)又出現(xiàn)了80285、80386等一系列型號(hào)。后來(lái)大家就把這種型號(hào)或者說(shuō)這種架構(gòu)的CPU統(tǒng)稱(chēng)之為X86架構(gòu)。
前面我們也說(shuō)了,代碼最先是存在于硬盤(pán)之上的,代碼運(yùn)行的時(shí)候是會(huì)先加載到內(nèi)存。在這之前計(jì)算機(jī)會(huì)做一件事情,就是把人類(lèi)寫(xiě)的程序翻譯成計(jì)算機(jī)能看的懂的指令,這叫做解碼,然后CPU 從內(nèi)存里取指令運(yùn)行。
這里我們要明白一件事,由于計(jì)算機(jī)是基于電工作的,電有高電頻和低電頻這兩種特性,所以對(duì)于計(jì)算機(jī)而言,它只能識(shí)別高電頻和低電頻這兩種信號(hào)。在計(jì)算機(jī)內(nèi)部高電頻就人為的從邏輯層面被定義為1,低電頻就人為的從邏輯層面被定義為0。所以計(jì)算機(jī)能識(shí)別的就只有0101這種高低電頻表示的二進(jìn)制。我們存儲(chǔ)的數(shù)據(jù)其實(shí)也是存了一堆二進(jìn)制。
64位代表的就是CPU每次從內(nèi)存里取出64位指令運(yùn)行,也就是每次從內(nèi)存里取出64個(gè)二進(jìn)制數(shù)做為一個(gè)指令。
32位就是CPU每次從內(nèi)存里取出32位指令運(yùn)行,也就是每次從內(nèi)存里取出32個(gè)二進(jìn)制數(shù)做為一個(gè)指令運(yùn)行。
我們還要知道的就是,CPU具有向下兼容性。舉個(gè)例子:現(xiàn)在你的CPU是64位的,你每次能接受的最大指令數(shù)是64個(gè),然后你的內(nèi)存里運(yùn)行了一款程序叫快播。假設(shè)快播這個(gè)程序開(kāi)發(fā)的時(shí)候就設(shè)計(jì)好了,它每次對(duì)外提供指令數(shù)就是64位,這個(gè)時(shí)候你的快播就肯定能夠正常執(zhí)行的,因?yàn)檫@個(gè)程序每次提供64位指令,而你的CPU每次也能夠接收64位指令。
現(xiàn)在假設(shè)快播這款程序設(shè)計(jì)的時(shí)候定義了每次對(duì)外提供的指令數(shù)是32位,這就相當(dāng)于你的車(chē)道是64條,可以同時(shí)容納64輛車(chē)并排行駛,但是你每次跑的車(chē)只有32輛,這肯定是可以正常運(yùn)行的。
現(xiàn)在我們調(diào)換一下,你的CPU是32位了,我們的軟件仍然是每次對(duì)外提供64位二進(jìn)制數(shù),這時(shí)候你的CPU就處理不了。
向下兼容性也就是64位的CPU,能夠運(yùn)行64位程序,也能夠運(yùn)行32位的程序。
最后我們總結(jié)一下,X86就是CPU的型號(hào),現(xiàn)在市面上的CPU基本上都是X86架構(gòu)的,我們?cè)诰W(wǎng)上下載程序的時(shí)候,看到上面寫(xiě)著X86-32位這就意味著這個(gè)程序所支持的CPU型號(hào)是X86架構(gòu)的,它每次向外提供的是一條完整的不可分割的32位指令,做為一個(gè)整體交給CPU執(zhí)行。也說(shuō)明了這款程序能夠運(yùn)行在X86-32位的CPU上,也能夠運(yùn)行在X86-64位的CPU上。
各位小伙伴,如果喜歡我分享的內(nèi)容,請(qǐng)關(guān)注我!謝謝~!以后我會(huì)持續(xù)更新Python學(xué)習(xí)內(nèi)容!
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » 7、電腦上X86-64/32位是什么意思