Alinhando Largura do Decodificador à Arquitetura do Conjunto de Instruções
O decodificador de instrução do Intel 8085A é de 8 bits porque o processador é um microprocessador de 8 bits com formato de instrução de 8 bits. Este alinhamento é fundamental à sua filosofia de design.
Consistência Arquitetural
- Barramento dados: 8 bits (D0-D7)
- Registradores (A, B, C, D, E, H, L): 8 bits cada
- Operações ULA: Aritmética/lógica de 8 bits
- Comprimento instrução: 1, 2, ou 3 bytes — mas opcode sempre 1 byte (8 bits)
Função do Decodificador
O decodificador de instrução é um circuito lógico combinacional que pega o opcode de 8 bits (buscado em T1-T2) e gera ~200 sinais de controle internos governando:
- Seleção operação ULA (ADD, SUB, ANA, XRA, etc.)
- Caminhos transferência registradores (origem → destino)
- Tipo ciclo memória/I/O (LEITURA/ESCRITA)
- Atualização flags (S, Z, AC, P, CY)
- Manipulação stack pointer / PC
Por Que Não Mais Largo?
- Custo/complexidade: Decodificador 16-bit exigiria busca opcode 16-bit (2 ciclos), dobrando tempo busca instrução sem benefício — 8085 não tem opcodes 16-bit.
- Contagem pinos: 8085 multiplexa endereço/dados em 8 pinos (AD0-AD7); decodificador mais largo precisaria mais pinos ou ciclos.
- Densidade conjunto instruções: 256 opcodes (2⁸) bastam para 74 instruções com espaço para expansão (opcodes indocumentados existem).
Contexto Histórico
O 8085 (1976) evoluiu do 8080 (1974), ambos 8-bit. O 8086 (1978) introduziu arquitetura 16-bit com fila pré-busca 6 bytes e opcodes comprimento variável — exigindo unidade decodificação mais complexa. O decodificador 8-bit do 8085 é escolha deliberada, ótima para seu ISA de 8 bits.