¿Intel y el procesador AMD tienen el mismo ensamblador?

El lenguaje C se usó para escribir UNIX para lograr la portabilidad: el mismo progtwig en lenguaje C comstackdo con diferentes comstackdores produce instrucciones de máquina diferentes. ¿Por qué el sistema operativo Windows puede ejecutarse en procesadores Intel y AMD?

Los procesadores AMD e Intel (*) tienen un gran conjunto de instrucciones en común, por lo que es posible que un comstackdor o ensamblador escriba un código binario que se ejecute “igual” en ambos.

Sin embargo, diferentes familias de procesadores, incluso de un fabricante, tienen sus propios conjuntos de instrucciones, generalmente denominadas “extensiones” o lo que sea. Ignorando el coprocesador x87, la primera vez que recuerdo que se trataba de un punto de mercadotecnia fue cuando de repente todo fue “con la tecnología MMX (TM)”. El código binario que se espera que se ejecute en cualquier procesador debe evitar las extensiones o detectar el tipo de CPU antes de usarlas.

La architecture Itanium de 64 bits de Intel era completamente diferente de la architecture x86-64 de AMD, por lo que durante un tiempo sus ofertas de 64 bits no fueron compatibles (e Itanium no era nada como x86, mientras que x86-64 extendió el conjunto de instrucciones agregando instrucciones de 64 bits). Intel parpadeó primero y adoptó x86-64, aunque todavía hay algunas diferencias: http://en.wikipedia.org/wiki/X86-64#Differences_between_AMD64_and_Intel_64

Windows probablemente usa el conjunto de instrucciones comunes x86 o x86-64 para casi todo el código. No me sorprendería si se envían varios controladores y códecs en varias versiones, y se selecciona el correcto una vez que la CPU ha sido interrogada.

(*) En realidad, Intel fabrica o ha fabricado varios tipos de procesadores, incluido ARM (los procesadores ARM de Intel se llamaron XScale, pero creo que han vendido ese negocio). Y AMD también hace otros procesadores. Pero sabemos a qué procesadores Intel / AMD te refieres 🙂

Como usted sospecha, los procesadores Intel y AMD de la stream principal tienen el mismo conjunto de instrucciones.

Windows no se ejecuta en chips ARM o PowerPC, por ejemplo, porque es algo dependiente del conjunto de instrucciones subyacente.

Sin embargo, la mayoría de Windows está escrito en C ++ (que yo sepa), que debería ser portátil a otras architectures. Windows NT incluso se ejecutó en PowerPC y otras architectures .

AMD es compatible con Intel, de lo contrario, nunca se habrían posicionado en el mercado.

Son efectivamente compatibles con clones.

Ryan

AMD e Intel usan el mismo conjunto de instrucciones.

Cuando instala Windows en un procesador AMD o Intel, no “comstack” el código en la máquina.

Recuerdo que muchas personas estaban confundidas sobre este tema durante la universidad. Ellos creen que una “configuración” significa que está comstackndo código en su máquina. No lo es La mayoría de las aplicaciones de Windows, si no todas, fuera de los reinos libres, se proporcionan mediante binarios.

En cuanto a la portabilidad, eso no es necesariamente cierto al 100%. Mientras que C es altamente portátil, en muchos casos, escribir para un sistema operativo o sistema específico resultará en que el código solo sea capaz de comstackr / ejecutar en esa caja. Por ejemplo, ciertas máquinas Unix manejan los archivos y directorios de manera diferente, por lo que podría no ser 100% portátil.

¿Intel y el procesador AMD tienen el mismo ensamblador? Un ensamblador ensambla un progtwig para ejecutarse en un procesador, por lo que su pregunta es errónea. Los procesadores NO utilizan ensambladores.

Si quieres decir, ¿pueden Intel y el procesador AMD ejecutar el mismo ensamblador? ¡¡¡Entonces la respuesta es sí!!!

Todos los ensambladores son, es un progtwig que ensambla otros progtwigs a partir de archivos de texto estructurado. Visual Basic es un ejemplo de un ensamblador.