¿Qué es un conjunto de instrucciones?
Un conjunto de instrucciones, o una arquitectura de conjunto de instrucciones, es el conjunto colectivo de comandos que puede ejecutar un procesador de computadora. Todo lo que hace una computadora, desde ejecutar una aplicación de procesamiento de textos hasta codificar archivos de video, es reducible a alguna combinación de estos comandos. Los programadores no crean directamente programas a través de estas instrucciones, sino que usan un tipo especial de software conocido como compilador que traduce el código de programación en instrucciones de la máquina. La mayoría de las computadoras personales utilizan un conjunto de instrucciones que se usó por primera vez en la década de 1970, mientras que los teléfonos inteligentes, las tabletas y otros dispositivos utilizan conjuntos de instrucciones más simples optimizados para entornos de baja potencia.
Las computadoras pueden parecer capaces de tareas ilimitadas, pero los microprocesadores dentro de ellas solo son capaces de ejecutar un número limitado de comandos predefinidos, conocidos como instrucciones. Por sí solo, cada instrucción es relativamente simple, tal vez le dice al procesador que agregue dos números o que mueva un dato de una ubicación a unotro. Cuando se combinan, estas instrucciones básicas se vuelven bastante poderosas y se utilizan como base para todo tipo de software. El rendimiento y la compatibilidad de una CPU están directamente relacionados con el número y el tipo de instrucciones que admite la CPU, lo que hace que las instrucciones establezcan un elemento crítico en el éxito comercial o el fracaso de cualquier diseño nuevo.
Una CPU solo puede realizar funciones que forman parte de su conjunto de instrucciones, pero muy pocos programadores de computadoras integran estos comandos en su software. En cambio, se utiliza un paso intermedio conocido como compilación. En este proceso, un programa conocido como compilador traduce un código amigable para los humanos utilizado por los programadores en un "código de máquina" que el procesador entiende. Dado que diferentes procesadores de computadora admiten diferentes conjuntos de instrucciones, se debe diseñar un compilador para el tipo de procesador en el que el programa está destinado a ejecutar. Con microprocesadores modernos capaces de execUsando hasta cientos de millones de millones o incluso miles de millones de instrucciones en un solo segundo, los compiladores se han convertido en el único medio práctico para crear software para computadoras.
Los microprocesadores utilizados en casi todas las computadoras personales vendidas desde la década de 1980 usan un conjunto de instrucciones llamado X86, que se diseñó originalmente para un procesador Intel® que debutó a mediados de la década de 1970. El deseo de compatibilidad hacia atrás ha ayudado a mantener el X86 dominante en el mercado de PC, aunque ocasionalmente se agregan nuevas instrucciones a través de extensiones. Muchos teléfonos inteligentes, tabletas y otros tipos de electrónica de consumo usan microprocesadores en función del conjunto de instrucciones del brazo, que es más simple y más eficiente de potencia que X86. Los servidores de alta gama, las súper computadoras y otros dispositivos especializados como consolas de juegos pueden usar diferentes conjuntos de instrucciones.