Por Que o 8086 (1978) Foi uma Arquitetura 16 Bits Marco
O 8086 estabeleceu a linhagem x86 que domina a computação hoje. Suas principais vantagens no lançamento e influência duradoura:
1. Arquitetura Interna de 16 Bits
- ALU de 16 bits, registradores (AX, BX, CX, DX, SI, DI, BP, SP), barramento de dados.
- Processa dados de 16 bits em um ciclo vs dois no 8080/8085.
- Aritmética direta de 16 bits (ADD AX, BX) — matemática mais rápida.
2. Espaço de Endereçamento Físico de 1 MB (Barramento de Endereços de 20 Bits)
- Endereçamento Segmento:Offset (segmentos de 64 KB × 16 = 1 MB).
- Vastamente maior que 64 KB do 8085 — permitiu apps complexos (planilhas, bancos de dados).
- Base para modelos de memória do DOS (Tiny, Small, Medium, Compact, Large, Huge).
3. Conjunto de Instruções Rico (~133 Instruções)
- Multiplicação/Divisão (MUL, DIV, IMUL, IDIV) — hardware, não software.
- Operações de string (MOVS, CMPS, SCAS, LODS, STOS) com prefixos REP — blocos de memória rápidos.
- Tratamento de interrupções (INT, IRET) — suporte estruturado a SO.
- Aritmética BCD (DAA, DAS, AAA, AAS) — apps comerciais.
4. Fila de Pré-busca (6 Bytes)
- Unidade de Interface de Barramento busca próximas instruções enquanto UE executa — pipeline inicial.
- Melhora throughput ~30% vs sem pré-busca.
5. Fundação de Compatibilidade de Software
- Compatível em código-fonte com 8080/8085 (via ferramenta TRANS86).
- Tornou-se padrão IBM PC (1981) → PC/AT → 386 → Pentium → Core → hoje.
- Enorme ecossistema de software como incentivo.
6. Múltiplos Modos Operacionais (Posteriores)
- Modo Real (8086 nativo) → Modo Protegido (286+) → Virtual 8086 (386+) → Modo Longo (x86-64).
- Mesma ISA roda código 16/32/64 bits.
Ressalvas (Contexto Histórico)
- Sem FPU de hardware (coprocessador 8087 opcional).
- Memória segmentada complexa para programadores.
- Sem proteção de memória (Modo Real) — crash de um app, crash de todos.
- Máx 5–10 MHz inicialmente; barramento de 16 bits multiplexado (AD0–AD15).
Legado: Segmento:offset, little-endian, codificação de instruções e modelo de interrupção do 8086 persistem em toda CPU x86 hoje.