a ver, explico...
X86-64 es la tecnologia de 64 bits que sigue siendo compatible con la tecnologia de X86 32bits.
dentro de X86-64 entran las arquitecturas AMD64 (AMD 64 bits) y EM64T (Intel 64bits). por decirlo asi, son dos formas de llegar a los 64bits usando caminos ligeramente distintos. pero que nadie os llame a engaños, el desarrollador ORIGINARIO de la tecnologia X86-64 fue AMD con su extension AMD64. intel adapto y copio la arqutectura y desarrollo EM64T, que es ligeramente diferente de la AMD64 (en muy poquitas cosas, como no tener el bit NX, que especifica que paginas son codigo y cuales datos, para evitar buffers overflow y demas...)
supongo que una visita por la wikipedia aclarara un poco mejor las cosas.
con respecto a IA32, se refiere a 'INTEL ARQUITECTURE 32', y es la especificacion de arquitectura basada en Intel de 32 bits, al igual que antes existia IA16, que era la arquitectura basada en intel de 16 bits (8086, 80186, 80286). al igual que estas arquitecturas Intel desarrollo IA64, que son sus procesadores ITANIUM e ITANIUM2. esta arquitectura NO ES COMPATIBLE POR HARDWARE CON LA IA32, por lo cual para ejecutar codigo de 32bits se usaba un emulador por software que hacia perder a igual MHz (comparando IA32 e IA64) entre un 40% y un 80% de rendimiento (algo totalmente inadmisible en juegos, por ejemplo). El que jamas existiera un windows para IA64 hizo que no se vendiera mas que con versiones UNIX/LINUX y solo para grandes empresas.
IA64 es TENCOLOGICAMENTE SUPERIOR a X86-64, y hasta donde se, suele arrojar mas rendimiento a igualdad de Mhz...
la cosa quedaria asi...
IA16: Intel 8086, 80186, 80286 (no ejecutan linux ni windows 9x)
IA32: (linux y windows 95 en adelante)
-> i386: Intel 80386, AMD386, CYRIX386
-> i486: Intel 80486, AMD486, CYRIX486
-> i586: Intel Pentium, Pentium MMX, AMDK5, Cyrix586
-> i686: Intel Pentium2/3/4, Celeron, AMD K6, Athlon, Duron, Sempron, Cyrix i686, Via Epia, y demas sucedaneos VIA...
IA64: Itanium e Itanium2 (no ejecutan ningun windows, 64 bits nativos, no soporta 32bits mas que por una emulacion software que hace perder entre un 40% y un 80% de rendimiento)
X86-64: (cualquier Windows y linux, si el codigo es de 32bits, se ejecuta en una forma especial en hardware que solo penaliza entre un 1% y un 8% de rendimiento)
-> AMD64: AMD Opteron, Sempron64
-> EM64T: Intel Pentium 4 con dicha extension (algunos P4 lo traen, otros no)
ademas de la tecnologia basica, existen 'extensiones' a algunas tencologias. como extensiones basicas que recuerde existen:
- FPU: Unidad de calculo flotante, era opcional desde 8086, desde Pentium la llevan todos.
- Modo Protegido 386: Es una extension que limitaba el tamaño de las zonas de memoria direccionadas por un puntero. si un puntero se descontrolaba y salia fuera de esa zona de RAM, la CPU lanzaba una excepcion ue debia ser cazada por el sistema operativo o la CPU se colgaba (famosas pantallas azules 06, 0e y 0d de Windows 95, 98 y ME). disponible desde I386 en adelante.
- MMX: una extension de procesamiento vectorial usando enteros. desde Pentium MMX cualquier procesador la lleva incorporada
- 3DNow!: Extension de calculo vectorial muy parecida a MMX pero usando numeros de coma flotante. desde AMD k6-2 y desde PIII todas las CPUS la llevan incluida. tambien salio una revision llamada 3DNow-2, que amplia el numero de instrucciones.
- SSE: Extension de calculo vectorial usando numeros de coma flotante. se usa desde PIII y Athlon-XP en adelante. tiene 3 revisiones llamadas SSE, SSE2 y SSE3, que añaden mas instrucciones.
- NX: Extension que marca determinadas zonas de memoria como ejecutables o no, para evitar posibles buffers overflow y fallos varios del sistema operativo.