Unterschied zwischen x86 und x64

x86 vs. x64
 

Der wichtigste Unterschied zwischen x86 und x64 besteht darin, dass die erstgenannte die 32-Bit-Architektur und die letztere die 64-Bit-Befehlssatzarchitektur ist. Eine Instruction Set Architecture (ISA) ist ein sehr wichtiger Begriff, der für jede CPU gilt. Anweisungen, Speicheradressen, Register und viele andere Architekturabschnitte einer CPU werden von der ISA festgelegt. x86 ist eine weltbekannte ISA, die 1978 von Intel mit dem 8086-Prozessor eingeführt wurde. Dann fanden verschiedene Erweiterungen statt, und AMD erstellte im Jahr 2000 die Spezifikation, um den x86-Befehlssatz unter dem Namen AMD64 auf 64 Bit zu erweitern. Später implementierten auch andere Unternehmen wie Intel diese Spezifikation, und diese AMD64 ist diejenige, die durch den Namen x64 identifiziert wird.

Was ist x86??

x86 ist eine von Intel eingeführte Befehlssatzarchitektur mit dem berühmten 8086 Prozessor. 1978 führte Intel den 8086-Prozessor ein, einen 16-Bit-Prozessor. Später führten sie verschiedene Prozessoren ein, z. B. 80186, 80286, 80386 und 80486, und alle waren abwärtskompatibel mit dem im 8086-Prozessor verwendeten ursprünglichen Befehlssatz. Da alle diese Prozessoren mit der Nummer 86 enden, wurde die Befehlssatzarchitektur durch den Namen x86 identifiziert. Mit der Einführung von 80386 wurde der x86-Befehl auf ein 32-Bit-System erweitert. 32-Bit bedeutet hier, dass alle Register, Speicherbus und Datenbus 32-Bit sind. Dann kamen Pentium-Prozessoren als Pentium I, Pentium II, Pentium III, Pentium IV und alle folgten einer 32-Bit-Architektur. Verschiedene andere Erweiterungen sind jedoch auf die x86-Architektur zurückzuführen, z. B. das Hinzufügen von Anweisungen wie MMX, SSE und SSE2. Abgesehen davon wurden auch viele andere Verbesserungen vorgenommen. Dann wurde der x86-Befehlssatz auf einen 64-Bit-Befehlssatz erweitert und von diesem Punkt an als x64 bezeichnet, was wir im nächsten Abschnitt besprechen werden. Im Allgemeinen bezieht sich x86 auf die 32-Bit-Architektur, die aus einer 16-Bit-Architektur mit dem 8086-Prozessor entwickelt wurde.

8086 Prozessor

Was ist x64??

Ein 32-Bit-System kann nur 2 darstellen32 verschiedene Werte und daher ist die Speicheradressierung auf diese Anzahl von Adressen beschränkt. 232 Bytes entsprechen 4 GB, und x86 hatte daher eine maximale adressierbare Speichergrenze von 4 GB. Um dies zu überwinden, wurden weitere Erweiterungen der x86-Architektur vorgenommen. AMD führte im Jahr 2000 eine solche Spezifikation ein, die die x86-Architektur auf 64 Bit erweiterte. Dies wurde unter dem Namen eingeführt AMD64. x64 ist ein anderer Name für diese AMD64-Architektur. Diese AMD64- oder x64-Architektur ist auch unter dem Namen bekannt x86_64. Bei der 64-Bit-Architektur wurden alle Register zu 64 Bit, und der Speicherbus und der Datenbus wurden ebenfalls zu 64 Bit. Jetzt 264 Es können verschiedene Werte angesprochen werden, wodurch der mögliche maximale Speicherplatz sehr hoch ist. AMD K8 war der erste Prozessor, der diese 64-Bit-Architektur implementierte. Dann übernahm auch Intel diese Architektur. Mit Intel Core-Prozessoren, die mit Intel Core 2 starteten, setzte Intel diese Architektur in ihren Prozessoren ein. Derzeit verwenden alle Intel-Prozessoren wie Core i3, Core i5 und Core i7 diese x64-Architektur. Es ist wichtig zu betonen, dass diese x64-Architektur noch mit dem alten x86-Befehlssatz abwärtskompatibel ist.

64-Bit-Prozessor

Was ist der Unterschied zwischen x86 und x64??

• x86 wurde um das Jahr 1978 eingeführt, während x64 vor kurzem im Jahr 2000 auf den Markt kam.

• x86 ging aus dem berühmten Intel 8086-Prozessor hervor und daher wurde x86 von Intel eingeführt. X64, das als Erweiterung zu x86 kam, wurde von AMD eingeführt.

• Die x86-Architektur ist 32-Bit. (Die ersten x86-Prozessoren waren 16 Bit, in späteren Prozessoren wurde jedoch eine Erweiterung auf 32 Bit vorgenommen). Die x64-Architektur ist 64-Bit.

• Prozessoren mit x86-Befehlssatzarchitektur verfügen daher über 32-Bit-Register, einen 32-Bit-Speicherbus und einen 32-Bit-Datenbus. X64 hat jedoch 64-Bit-Register, einen 64-Bit-Speicherbus und einen 64-Bit-Datenbus.

• Für x86 gilt eine Beschränkung für den maximal adressierbaren Speicher, dh eine Obergrenze von 4 GB (232 Bytes). Bei x64-Systemen ist diese Grenze jedoch sehr groß (2)64 Bytes.

• x64 ist eine Erweiterung von x86; Daher ist es wesentlich besser und leistungsfähiger als der alte x86.

• Werte, die in einem x64-System in einem Register gespeichert werden können, sind größer als Werte, die in einem x86-basierten Register gespeichert werden können. Daher kann x64 die Berechnung größerer Ganzzahlen viel schneller verarbeiten, da in diesem Fall keine Notwendigkeit besteht, mehrere Register zu verwenden, um den Wert wie in x86 aufzuteilen und zu speichern.

• x64 kann parallel größere Daten entlang des Datenbusses übertragen. Das heißt, ein Datenbus mit 64 Bit kann 64 Bit parallel übertragen, während die x86-Architektur mit einem 32-Bit-Bus nur 32 Bit parallel übertragen kann.

Zusammenfassung:

x86 vs. x64

Die Architektur des x86-Befehlssatzes ist 32 Bit, während die Architektur des x64-Befehlssatzes 64 Bit beträgt. x64 war eine Erweiterung der vorhandenen x86-Architektur. Die Register, der Speicherbus, der Datenbus bei x86-Architekturen sind 32 Bit, während dies bei 64 Bit 64 ist. Daher ist die maximale Menge an adressierbarem Speicher in x64-Systemen sehr viel höher als in x86-Systemen. x86 wurde von Intel mit dem 8086-Prozessor, einem 16-Bit-Prozessor, eingeführt. Mit der Zeit wurde dieser x86-Prozessor auf 32 Bit erweitert. Später führte AMD die x64-Architektur ein, indem die vorhandene x86-Architektur erweitert wurde. Diese x64 ist vollständig abwärtskompatibel mit dem x86-Befehlssatz.

Bilder mit freundlicher Genehmigung:

  1. Intel 8086 durch Appaloosa (CC BY-SA 3.0)
  2. 64-Bit-Prozessor durch Appaloosa (CC BY 3.0