x86 prieš x64
Svarbiausias skirtumas tarp x86 ir x64 yra tas, kad pirmoji yra 32 bitų architektūra, o antroji – 64 bitų instrukcijų rinkinio architektūra. Instrukcijų rinkinio architektūra (ISA) yra labai svarbus terminas, taikomas bet kuriam CPU. Instrukcijas, atminties adresavimą, registrus ir daugelį kitų procesoriaus architektūrinių skyrių nurodo ISA. x86 yra visame pasaulyje žinomas ISA, kurį „Intel“pristatė 1978 m. su 8086 procesoriumi. Tada įvyko įvairūs plėtiniai ir 2000 m. AMD sukūrė specifikaciją išplėsti x86 instrukcijų rinkinį iki 64 bitų pavadinimu AMD64. Vėliau kitos įmonės, tokios kaip „Intel“, taip pat įdiegė tą specifikaciją, o šis AMD64 yra tas, kuris identifikuojamas pavadinimu x64.
Kas yra x86?
x86 yra instrukcijų rinkinio architektūra, kurią „Intel“pristatė su garsiuoju 8086 procesoriumi. 1978 m. „Intel“pristatė 8086 procesorių, kuris buvo 16 bitų procesorius. Vėliau jie pristatė įvairius procesorius, tokius kaip 80186, 80286, 80386 ir 80486, ir visi buvo suderinami su pradiniu instrukcijų rinkiniu, naudojamu 8086 procesoriuje. Kadangi visi šie procesoriai baigiasi skaičiumi 86, instrukcijų rinkinio architektūra buvo identifikuota pavadinimu x86. Įvedus 80386, x86 instrukcija buvo išplėsta iki 32 bitų sistemos. Čia 32 bitai reiškia, kad visi registrai, atminties magistralė ir duomenų magistralė yra 32 bitų. Tada „Pentium“procesoriai buvo „Pentium I“, „Pentium II“, „Pentium III“, „Pentium IV“ir visi jie taip pat buvo 32 bitų architektūra. Tačiau x86 architektūrai atsirado įvairių kitų plėtinių, pvz., pridėta instrukcijų, tokių kaip MMX, SSE ir SSE2. Be to, buvo atlikta daug kitų patobulinimų. Tada x86 instrukcijų rinkinys buvo išplėstas iki 64 bitų instrukcijų rinkinio ir nuo šio momento jis buvo vadinamas x64, kurį aptarsime kitame skyriuje. Bet kokiu atveju, apskritai x86 reiškia 32 bitų architektūrą, kuri išsivystė iš 16 bitų architektūros, kuri buvo sukurta su 8086 procesoriumi.
8086 procesorius
Kas yra x64?
32 bitų sistema gali pateikti tik 232 skirtingas reikšmes, todėl atminties adresavimas ribojamas iki tokio adresų skaičiaus. 232 baitai yra lygūs 4 GB, todėl x86 didžiausias adresuojamos atminties limitas buvo 4 GB. Siekiant tai įveikti, x86 architektūra buvo išplėsta. AMD maždaug 2000 metais pristatė tokią specifikaciją, kuri išplėtė x86 architektūrą iki 64 bitų. Tai buvo pristatyta pavadinimu AMD64. x64 yra kitas šios AMD64 architektūros pavadinimas. Ši AMD64 arba x64 architektūra taip pat žinoma pavadinimu x86_64. Naudojant 64 bitų architektūrą, visi registrai tapo 64 bitų, o atminties magistralė ir duomenų magistralė taip pat tapo 64 bitų. Dabar galima spręsti 264 skirtingas reikšmes ir tai suteikia didžiulę viršutinę galimos maksimalios atminties ribą. AMD K8 buvo pirmasis procesorius, įdiegęs šią 64 bitų architektūrą. Tada „Intel“taip pat priėmė šią architektūrą. Su Intel Core procesoriais, kurie prasidėjo nuo Intel Core 2, Intel pradėjo naudoti šią architektūrą savo procesoriuose. Šiuo metu visi Intel procesoriai, tokie kaip Core i3, Core i5 ir Core i7, naudoja šią x64 architektūrą. Svarbu pabrėžti, kad ši x64 architektūra vis dar yra suderinama su senuoju x86 instrukcijų rinkiniu.
64 bitų procesorius
Kuo skiriasi x86 ir x64?
• x86 buvo pristatytas maždaug 1978 m., o x64 pasirodė visai neseniai, 2000 m.
• x86 atsirado iš garsiojo Intel 8086 procesoriaus, todėl x86 pristatė Intel. Tačiau x64, kuris buvo x86 plėtinys, pristatė AMD.
• x86 architektūra yra 32 bitų. (Pirmieji x86 procesoriai buvo 16 bitų, bet vėlesniuose procesoriuose buvo atliktas išplėtimas iki 32 bitų). x64 architektūra yra 64 bitų.
• Procesoriai su x86 instrukcijų rinkinio architektūra, todėl turi 32 bitų registrus, 32 bitų atminties magistralę ir 32 bitų duomenų magistralę. Tačiau x64 turi 64 bitų registrus, 64 bitų atminties magistralę ir 64 bitų duomenų magistralę.
• x86 turi didžiausios adresuojamos atminties apribojimą, kuris yra 4 GB (232 baitų). Tačiau x64 sistemose ši riba yra didžiulė, tai yra 264 baitų.
• x64 yra x86 išplėtimas; todėl jis yra daug patobulintas ir galingesnis nei senasis x86.
• Vertės, kurios gali būti saugomos registre x64 sistemoje, yra didesnės nei reikšmės, kurias galima saugoti x86 pagrįstame registre. Todėl x64 gali daug greičiau skaičiuoti didesnius sveikuosius skaičius, nes tokiu atveju nereikia naudoti kelių registrų, kad būtų galima padalyti reikšmę ir išsaugoti kaip x86.
• x64 gali lygiagrečiai perduoti didesnio dydžio duomenis išilgai duomenų magistralės. Tai reiškia, kad 64 bitų duomenų magistralė gali lygiagrečiai perduoti 64 bitus, o x86 architektūra, turinti 32 bitų magistralę, gali lygiagrečiai perduoti tik 32 bitus.
Santrauka:
x86 prieš x64
x86 instrukcijų rinkinio architektūra yra 32 bitų, o x64 instrukcijų rinkinio architektūra yra 64 bitai. x64 buvo kaip esamos x86 architektūros pratęsimas. Registrai, atminties magistralė, duomenų magistralė x86 architektūroje yra 32 bitai, o x64 - 64 bitai. Todėl maksimalus adresuojamos atminties kiekis yra daug didesnis x64 sistemose nei x86 sistemose.„X86“pristatė „Intel“su 8086 procesoriumi, kuris buvo 16 bitų procesorius, o su laiku šis x86 buvo išplėstas iki 32 bitų. Vėliau AMD pristatė x64 architektūrą, išplėtusi esamą x86 architektūrą ir šis x64 yra visiškai suderinamas su x86 instrukcijų rinkiniu.