Rozdíl mezi x86 a x64

x86 vs x64
 

Nejdůležitější rozdíl mezi x86 a x64 je v tom, že první je 32bitová architektura a druhá je 64bitová architektura instrukční sady. Architektura sady instrukcí (ISA) je velmi důležitý pojem, který se vztahuje na jakýkoli procesor. Pokyny, adresování paměti, registry a mnoho dalších architektonických částí CPU jsou stanoveny ISA. x86 je světově proslulá ISA představená společností Intel v roce 1978 s procesorem 8086. Poté došlo k různým rozšířením a v roce 2000 AMD vytvořil specifikaci pro rozšíření sady instrukcí x86 na 64bit pod názvem AMD64. Později také další specifikace, jako je Intel, implementovaly tuto specifikaci a tento AMD64 je ten, který je označen názvem x64.

Co je x86?

x86 je architektura instrukční sady zavedená společností Intel se slavným procesorem 8086. V roce 1978 společnost Intel představila procesor 8086, což byl 16bitový procesor. Později zavedli různé procesory jako 80186, 80286, 80386 a 80486 a všechny byly zpětně kompatibilní s původní sadou instrukcí použitou v procesoru 8086. Protože všechny tyto procesory končí číslem 86, architektura instrukční sady byla identifikována jménem x86. Se zavedením 80386 byla instrukce x86 rozšířena na 32bitový systém. Zde 32 bitů znamená, že všechny registry, paměťová sběrnice a datová sběrnice jsou 32 bitové. Pak procesory Pentium přišly jako Pentium I, Pentium II, Pentium III, Pentium IV a všechny tyto následovaly 32bitovou architekturu. V architektuře x86 však došlo k různým dalším rozšířením, jako je přidání instrukcí, jako MMX, SSE a SSE2. Kromě toho bylo provedeno mnoho dalších vylepšení. Poté byla instrukční sada x86 rozšířena na 64bitovou instrukční sadu a od této chvíle byla nazývána jako x64, o kterém budeme diskutovat v další části. Obecně platí, že x86 odkazuje na 32bitovou architekturu, která se vyvinula z 16bitové architektury, která přišla s procesorem 8086.

8086 procesor

Co je x64?

32bitový systém může představovat pouze 232 odlišné hodnoty, a proto je adresování paměti omezeno na tento počet adres. 232 bajty jsou rovny 4 GB, a proto x86 měl maximální limit adresovatelné paměti 4 GB. Za účelem překonání této situace byla provedena další rozšíření architektury x86. AMD přibližně v roce 2000 zavedla takovou specifikaci, která rozšířila architekturu x86 na 64 bitů. Toto bylo představeno pod jménem AMD64. x64 je další název této architektury AMD64. Tato architektura AMD64 nebo x64 je známá také pod názvem x86_64. Při 64bitové architektuře se všechny registry staly 64 bitů a paměťová sběrnice a datová sběrnice se také stala 64bitovými. Nyní 264 mohou být adresovány odlišné hodnoty, což poskytuje obrovskou horní hranici možné maximální paměti. AMD K8 byl první procesor, který implementoval tuto 64bitovou architekturu. Poté Intel také přijal tuto architekturu. S procesory Intel Core, které začaly od Intel Core 2, Intel začal tuto architekturu používat ve svých procesorech. V současné době tuto architekturu x64 používají všechny procesory Intel, například Core i3, Core i5 a Core i7. Je důležité zdůraznit, že tato architektura x64 je stále zpětně kompatibilní se starou sadou instrukcí pro x86.

64bitový procesor

Jaký je rozdíl mezi x86 a x64?

• x86 byl představen kolem roku 1978, zatímco x64 vznikl nedávno v roce 2000.

• x86 se vynořil ze slavného procesoru Intel 8086, a proto byl x86 představen společností Intel. Ale x64, který přišel jako rozšíření na x86, byl představen AMD.

• architektura x86 je 32bit. (Prvních x86 procesorů bylo 16 bitů, ale v pozdějších procesorech bylo provedeno rozšíření na 32bit). Architektura x64 je 64 bitů.

• Procesory s architekturou instrukčních sad x86 mají proto 32bitové registry, 32bitovou paměťovou sběrnici a 32bitovou datovou sběrnici. Ale x64 má 64 bitové registry, 64 bitovou paměťovou sběrnici a 64 bitovou datovou sběrnici.

• x86 má omezení maximální adresovatelné paměti, což je horní limit 4 GB (232 bajtů). Ale v systémech x64 je tento limit obrovský, což je 264 bajtů.

• x64 je expanze x86; proto je mnohem lepší a výkonnější než starý x86.

• Hodnoty, které lze uložit do registru v systému x64, jsou větší než hodnoty, které lze uložit do registru založeného na x86. Proto x64 zvládne výpočet větších celých čísel mnohem rychleji, protože není nutné používat několik registrů v takovém případě k rozdělení hodnoty a uložení jako v x86.

• x64 může paralelně přenášet data větší velikosti podél datové sběrnice. To znamená, že datová sběrnice 64 bitů může paralelně vysílat 64 bitů, zatímco architektura x86, která má 32 bitovou sběrnici, může paralelně vysílat 32 bitů.

Souhrn:

x86 vs x64

Architektura instrukční sady x86 je 32 bitů, zatímco architektura instrukcí x64 je 64 bitů. x64 přišlo jako rozšíření stávající architektury x86. Registry, paměťová sběrnice a datová sběrnice na architekturách x86 jsou 32 bitů, zatímco na x64 to je 64 bitů. Proto maximální množství adresovatelné paměti je v systémech x64 mnohem vyšší než v systémech x86. x86 byl představen společností Intel s procesorem 8086, který byl 16bitovým procesorem, as časem byl tento x86 rozšířen na 32 bitů. Poté AMD představil architekturu x64 rozšířením stávající architektury x86 a tento x64 je plně zpětně kompatibilní s instrukční sadou x86.

Obrázky se svolením:

  1. Intel 8086 od Appaloosa (CC BY-SA 3.0)
  2. 64bitový procesor od Appaloosa (CC BY 3.0)