Por qué el 8085A tiene un decodificador de instrucciones de 8 bits: Arquitectura explicada

Alineando ancho de decodificador con arquitectura de conjunto de instrucciones

El decodificador de instrucciones del Intel 8085A es de 8 bits porque el procesador es un microprocesador de 8 bits con formato de instrucción de 8 bits. Esta alineación es fundamental para su filosofía de diseño.

Consistencia arquitectónica

  • Bus de datos: 8 bits (D0-D7)
  • Registros (A, B, C, D, E, H, L): 8 bits cada uno
  • Operaciones ALU: Aritmética/lógica de 8 bits
  • Longitud instrucción: 1, 2, o 3 bytes —pero el opcode siempre es 1 byte (8 bits)

Función del decodificador

El decodificador de instrucciones es un circuito lógico combinacional que toma el opcode de 8 bits (obtenido en T1-T2) y genera ~200 señales de control internas que gobiernan:

  • Selección operación ALU (ADD, SUB, ANA, XRA, etc.)
  • Rutas transferencia registros (origen → destino)
  • Tipo ciclo memoria/I/O (LECTURA/ESCRITURA)
  • Actualización banderas (S, Z, AC, P, CY)
  • Manipulación puntero pila / PC

¿Por qué no más ancho?

  • Coste/complejidad: Decodificador de 16 bits requeriría búsqueda opcode de 16 bits (2 ciclos), doblando tiempo de búsqueda de instrucción sin beneficio —el 8085 no tiene opcodes de 16 bits.
  • Número de pines: El 8085 multiplexa dirección/datos en 8 pines (AD0-AD7); decodificador más ancho necesitaría más pines o ciclos.
  • Densidad conjunto instrucciones: 256 opcodes (2⁸) bastan para 74 instrucciones con margen para expansión (existen opcodes indocumentados).

Contexto histórico

El 8085 (1976) evolucionó del 8080 (1974), ambos de 8 bits. El 8086 (1978) introdujo arquitectura de 16 bits con cola de prefetch de 6 bytes y opcodes de longitud variable —requiriendo unidad de decodificación más compleja. El decodificador de 8 bits del 8085 es una elección deliberada y óptima para su ISA de 8 bits.