¿Qué es un conjunto de instrucciones?

Cualquier CPU está diseñada desde cero para admitir un conjunto de instrucciones en particular. Un conjunto de instrucciones es un conjunto de operaciones codificadas que la CPU puede realizar. Estas operaciones pueden ser, por ejemplo, sumar dos números, saltar a una parte diferente del programa o comparar dos valores. Cada operación que puede realizar una computadora está representada únicamente por un código de operación.

códigos de operación

Al ejecutar un programa, la CPU usa un contador de programa para rastrear qué instrucción debe ejecutarse a continuación. Cuando se recupera una instrucción, el contador del programa se incrementa por la longitud de la instrucción para que apunte al inicio de la siguiente instrucción. Cada instrucción consta de un código de operación. Dependiendo de la instrucción, puede o no incluir operandos. Los operandos pueden ser un valor constante o un puntero a la ubicación de un valor en el registro de la CPU o en la RAM del sistema.

Una vez que se ha obtenido la instrucción completa, es necesario decodificarla. Este es el proceso en el que la CPU separa el código de operación y los operandos. El código de operación decodificado se usa para habilitar o deshabilitar rutas eléctricas específicas en la CPU que darán como resultado la operación correcta.

Una vez decodificada la instrucción, se ejecutará. El comportamiento exacto de la CPU dependerá de la operación. Una operación de suma sumará dos valores juntos. Una operación de salto calculará hacia dónde saltar en el programa. Una operación de comparación comparará dos valores. Una operación NOP permanecerá inactiva, ya que NOP significa Sin operación.

La mayoría de las instrucciones generarán el resultado de la operación. Esta salida puede ir a los registros del procesador y, si es necesario, a la RAM del sistema. Cada una de estas operaciones requiere un solo ciclo de reloj para completarse.

Códigos de operación ilegales

Cada arquitectura de CPU tiene su lista específica de códigos de operación publicada por el fabricante. Los valores de estos códigos de operación no son necesariamente los mismos entre plataformas, por lo que el software debe compilarse para diferentes arquitecturas. En algunos casos, el fabricante también incluye códigos de operación no documentados. Estos se conocen como "códigos de operación ilegales". Los códigos de operación ilegales, aunque no estén documentados, realizarán la misma función cada vez que se llamen. Sin embargo, como características no documentadas y no estándar, las actualizaciones de la arquitectura de la CPU pueden simplemente eliminarlas.

Algunos de los primeros juegos de computadora en Apple II se basaban en códigos de operación ilegales específicos. Luego sufrieron problemas de rendimiento y estabilidad en la revisión posterior de la CPU Apple IIc, ya que IIc eliminó los códigos de operación ilegales que requerían los juegos. Los códigos de operación ilegales también se utilizaron en los círculos de protección de derechos de autor como un método de seguridad a través de la oscuridad en su lucha contra los piratas que descifran su contenido. Algunos códigos de operación ilegales son simplemente herramientas de depuración y controladores de errores.

El conjunto de instrucciones x86 contiene una gran cantidad de códigos de operación ilegales no documentados. Curiosamente, algunos de estos se comparten entre las CPU de Intel y AMD, lo que indica que ambas empresas son conscientes públicamente de su propósito aunque no estén documentadas.

Compiladores y Ensambladores

La mayoría de los programas están escritos en lenguajes de alto nivel. Estos son relativamente fáciles de leer, a menudo usan palabras en inglés o abreviaturas para minimizar las curvas de aprendizaje. Para que una computadora ejecute estos programas, es necesario compilarlos. Un compilador es básicamente un traductor. Toma el código de alto nivel y lo convierte en código de computadora, las instrucciones que la CPU puede entender.

También es posible, en algunos lenguajes, ejecutar código no compilado a través de un programa previamente compilado que genera código de máquina sobre la marcha. Assembly es un lenguaje de programación de bajo nivel que utiliza abreviaturas para permitir a los desarrolladores una visibilidad directa y control sobre las operaciones realizadas. NOP es un ejemplo de taquigrafía de ensamblaje.

Conclusión

Un conjunto de instrucciones es una lista de funciones oficiales que puede ejecutar una arquitectura de CPU. Es una lista de operaciones que se pueden realizar. Estas operaciones están codificadas en la CPU y se llaman usando sus respectivos códigos de operación.

El software generalmente usa un compilador para traducir de un código de alto nivel legible por humanos al código de máquina que la CPU puede leer. A veces, una arquitectura de CPU puede tener códigos de operación no documentados, llamados códigos de operación ilegales. Los códigos de operación ilegales son técnicamente parte del conjunto de instrucciones. Sin embargo, es posible que no estén disponibles de manera confiable en futuras iteraciones de la plataforma. No olvides dejar tus pensamientos en los comentarios a continuación.



Leave a Comment

Qué Hacer Si Powerbeats Pro No Carga en el Estuche

Qué Hacer Si Powerbeats Pro No Carga en el Estuche

Si tus Powerbeats Pro no cargan, utiliza otra fuente de energía y limpia tus auriculares. Deja el estuche abierto mientras cargas tus auriculares.

Fundamentos de Impresión 3D: Una Lista de Verificación de Mantenimiento Imprescindible

Fundamentos de Impresión 3D: Una Lista de Verificación de Mantenimiento Imprescindible

Mantener tu equipo en buen estado es fundamental. Aquí hay algunos consejos útiles para mantener tu impresora 3D en óptimas condiciones.

Canon Pixma MG5220: Escanear Sin Tinta

Canon Pixma MG5220: Escanear Sin Tinta

Cómo habilitar el escaneo en la Canon Pixma MG5220 cuando se queda sin tinta.

5 Razones por las Que Tu Portátil Se Está Sobrecalentando

5 Razones por las Que Tu Portátil Se Está Sobrecalentando

Descubre algunas de las posibles razones por las que tu portátil se está sobrecalentando, junto con consejos y trucos para evitar este problema y mantener tu dispositivo fresco.

Cómo instalar un SSD en PCs de escritorio y portátiles

Cómo instalar un SSD en PCs de escritorio y portátiles

¿Acabas de comprar un SSD con la esperanza de mejorar el almacenamiento interno de tu PC, pero no sabes cómo instalarlo? ¡Lee este artículo ahora!

Cómo solucionar el código de error 0xC272008F de GeForce Now

Cómo solucionar el código de error 0xC272008F de GeForce Now

Te estás preparando para una noche de juegos y va a ser una gran noche: acabas de conseguir “Star Wars Outlaws” en el servicio de streaming GeForce Now. Descubre la única solución conocida que te muestra cómo arreglar el error 0xC272008F de GeForce Now para que puedas empezar a jugar los juegos de Ubisoft nuevamente.

Fundamentos de la Impresión 3D: Consejos de Mantenimiento para su Impresora 3D

Fundamentos de la Impresión 3D: Consejos de Mantenimiento para su Impresora 3D

Mantener sus impresoras 3D es muy importante para obtener los mejores resultados. Aquí hay algunos consejos importantes a tener en cuenta.

Cómo encontrar la dirección IP de una impresora

Cómo encontrar la dirección IP de una impresora

¿Tienes problemas para averiguar cuál es la dirección IP de tu impresora? Te mostraremos cómo encontrarla.

Cómo usar AirPods con teléfonos Samsung

Cómo usar AirPods con teléfonos Samsung

Si tienes dudas sobre si comprar AirPods para tu teléfono Samsung, esta guía te ayudará. La pregunta más obvia es si son compatibles, y la respuesta es: ¡sí, lo son!

Solución de problemas de Roku no actualiza el software

Solución de problemas de Roku no actualiza el software

Asegúrate de que tu dispositivo Roku funcione correctamente actualizando el software. Aquí tienes soluciones efectivas para el problema de actualizaciones de Roku.