Diferencia entre x86 y x64

x86 vs x64
 

La diferencia más importante entre x86 y x64 es que la primera es la arquitectura de 32 bits y la última es la arquitectura de conjunto de instrucciones de 64 bits. Una arquitectura de conjunto de instrucciones (ISA) es un término muy importante que se aplica a cualquier CPU. Las instrucciones, el direccionamiento de la memoria, los registros y muchas otras secciones de arquitectura de una CPU están especificadas por la ISA. x86 es una ISA mundialmente famosa presentada por Intel en 1978 con el procesador 8086. Luego ocurrieron varias extensiones y, en 2000, AMD creó la especificación para extender el conjunto de instrucciones x86 a 64 bits con el nombre AMD64. Más tarde, otras compañías como Intel también implementaron esa especificación y esta AMD64 es la que se identifica con el nombre x64.

Que es x86?

x86 es una arquitectura de conjunto de instrucciones introducida por Intel Con el famoso procesador 8086. En 1978, Intel presentó el procesador 8086 que era un procesador de 16 bits. Luego, más tarde, introdujeron varios procesadores como 80186, 80286, 80386 y 80486, y todos fueron compatibles con el conjunto de instrucciones original utilizado en el procesador 8086. Dado que todos estos procesadores terminan con el número 86, la arquitectura del conjunto de instrucciones se identificó con el nombre x86. Con la introducción de 80386, la instrucción x86 se extendió a un sistema de 32 bits. Aquí, 32 bits significa que todos los registros, el bus de memoria y el bus de datos son de 32 bits. Luego vinieron los procesadores Pentium como Pentium I, Pentium II, Pentium III, Pentium IV y todos estos también tenían una arquitectura de 32 bits. Pero varias otras extensiones pasaron a la arquitectura x86, como la adición de instrucciones como MMX, SSE y SSE2. Aparte de eso, también se hicieron muchas otras mejoras. Luego, el conjunto de instrucciones x86 se extendió a un conjunto de instrucciones de 64 bits y desde este punto en adelante se llamó como x64, que veremos en la siguiente sección. De todos modos, en general, x86 se refiere a la arquitectura de 32 bits que evolucionó de una arquitectura de 16 bits que surgió con el procesador 8086.

Procesador 8086

Que es x64?

Un sistema de 32 bits puede representar solo 232 valores distintos y, por lo tanto, el direccionamiento de memoria está limitado a ese número de direcciones. 232 los bytes son iguales a 4 GB y, por lo tanto, x86 tenía un límite máximo de memoria direccionable de 4 GB. Para superar esto, se hicieron más extensiones a la arquitectura x86. AMD, alrededor del año 2000, introdujo tal especificación que extendió la arquitectura x86 a 64 bits. Esto fue introducido bajo el nombre AMD64. x64 es otro nombre dado a esta arquitectura AMD64. Esta arquitectura AMD64 o x64 también se conoce con el nombre x86_64. Con la arquitectura de 64 bits, todos los registros se convirtieron en 64 bits y el bus de memoria y el bus de datos también se convirtieron en 64 bits. Ahora 264 Se pueden abordar distintos valores y esto proporciona un límite superior enorme en la memoria máxima posible. AMD K8 fue el primer procesador que implementó esta arquitectura de 64 bits. Entonces Intel también adoptó esta arquitectura. Con los procesadores Intel Core que comenzaron a partir de Intel Core 2, Intel comenzó a usar esta arquitectura en sus procesadores. Actualmente, todos los procesadores Intel, como Core i3, Core i5 y Core i7, utilizan esta arquitectura x64. Es importante destacar que esta arquitectura x64 todavía es compatible con el conjunto de instrucciones antiguo x86.

Procesador de 64 bits

¿Cuál es la diferencia entre x86 y x64??

• x86 se introdujo alrededor del año 1978, mientras que x64 apareció más recientemente en el año 2000.

• x86 surgió del famoso procesador Intel 8086 y, por lo tanto, x86 fue introducido por Intel. Pero x64, que vino como una extensión de x86, fue introducido por AMD.

• La arquitectura x86 es de 32 bits. (Los primeros procesadores x86 eran de 16 bits pero, en procesadores posteriores, se realizó una extensión a 32 bits). La arquitectura x64 es de 64 bits.

• Los procesadores con arquitectura de conjunto de instrucciones x86, por lo tanto, tienen registros de 32 bits, bus de memoria de 32 bits y bus de datos de 32 bits. Pero x64 tiene registros de 64 bits, bus de memoria de 64 bits y bus de datos de 64 bits.

• x86 tiene una limitación en la memoria máxima direccionable que es un límite superior de 4 GB (232 bytes). Pero, en sistemas x64, este límite es enorme, que es 264 bytes.

• x64 es una expansión de x86; Por lo tanto, es mucho mejor y más poderoso que el antiguo x86..

• Los valores que se pueden almacenar en un registro, en un sistema x64, son más grandes que los valores que se pueden almacenar en un registro basado en x86. Por lo tanto, x64 puede manejar el cálculo de enteros más grandes mucho más rápido, ya que no hay necesidad de usar varios registros en tal caso para dividir el valor y almacenar como en x86.

• x64 puede transmitir en paralelo datos de mayor tamaño a lo largo del bus de datos. Es decir, un bus de datos de 64 bits puede transmitir en paralelo 64 bits, mientras que la arquitectura x86 que tiene un bus de 32 bits solo puede transmitir en paralelo 32 bits.

Resumen:

x86 vs x64

La arquitectura del conjunto de instrucciones x86 es de 32 bits, mientras que la arquitectura del conjunto de instrucciones x64 es de 64 bits. x64 vino como una extensión de la arquitectura x86 existente. Los registros, bus de memoria, bus de datos en arquitecturas x86 son de 32 bits, mientras que esto es de 64 bits en x64. Por lo tanto, la cantidad máxima de memoria direccionable es mucho mayor en los sistemas x64 que en los sistemas x86. x86 fue introducido por Intel con el procesador 8086 que era un procesador de 16 bits y con el tiempo este x86 se extendió a 32 bits. Luego, más tarde, AMD presentó la arquitectura x64 al ampliar la arquitectura x86 existente y este x64 es totalmente compatible con el conjunto de instrucciones x86..

Imágenes cortesía:

  1. Intel 8086 por Appaloosa (CC BY-SA 3.0)
  2. Procesador de 64 bits por Appaloosa (CC BY 3.0