🎯 Objetivo
Explicar de forma detallada el concepto de conjunto de instrucciones de una arquitectura de computadora, sus características, formatos, técnicas de codificación, modos de direccionamiento y ejemplos de implementación.
1. Introducción al ISA
- Define la interfaz entre hardware y software.
- Cada instrucción especifica una operación y operandos.
- Influye en eficiencia, complejidad y compatibilidad.
2. Formato de Instrucción
- CO: Código de operación.
- Operandos: Datos o direcciones.
- Modos: Cómo acceder a los operandos.
Tipos: formato fijo (ej. 32 bits) y variable.
3. Codificación de la Operación
3.1 Bloque Fijo
Usa bits constantes. Ejemplo: 8 instrucciones → 3 bits.
3.2 Bloque Extendido
Agrupa instrucciones por tipo. Más flexible.
3.3 Técnica de Huffman
Codifica según frecuencia. Ejemplo: LOAD=11, HALT=0000.
4. Campos de Dirección
Definen dónde están los operandos: en la instrucción, en registros o en memoria.
5. Modos de Direccionamiento
5.1 Básicos
- Inmediato
- Directo (registro)
- Absoluto (memoria)
- Indirecto de registro
- Indirecto de memoria
- Autoincremento / Autodecremento
5.2 Compuestos
- Índice
- Indirecto de índice
- Base-desplazamiento
- Base-desplazamiento escalado
- Relativo
6. Codificación del Operando
Ejemplo: bit de indirecto en PDP-11. Simplifica la lógica de control.
7. Codificación Completa
Ejemplo PDP-11: ADD (R5), R3 → CO + modo + registro fuente + destino.
🧭 Conclusión
El ISA define cómo el software controla el hardware. Su diseño impacta rendimiento, compiladores y flexibilidad. Comprender formatos, modos y codificación es clave para optimizar arquitecturas.