O Intel 8085 (1976) é classificado como microprocessador baseado em acumulador (ou "single-accumulator") porque seu registrador A (Acumulador) é o operando implícito e central para a vasta maioria de operações aritméticas, lógicas, e de movimento de dados. Este design reflete restrições dos anos 1970: transistores limitados, codificação de instrução simples, e modelo de programação otimizado para código com poucos registradores.
Quase toda instrução ALU usa o acumulador como uma fonte e o destino:
ADD B ; A ← A + B
SUB M ; A ← A - (HL)
ANA C ; A ← A AND C
XRA A ; A ← 0 (limpar)
ORA M ; A ← A OR (HL)
CMP D ; Seta flags baseadas em A - D (A inalterado)
Resultado sempre vai para A. Flags (S, Z, AC, P, CY) refletem resultado de A.
O acumulador bufferiza resultados intermediários durante cálculos multi-passo:
LDA 2050H ; Carrega operando 1 para A
MOV B, A ; Salva em B
LDA 2051H ; Carrega operando 2 para A
ADD B ; A ← A + B (resultado em A)
STA 2052H ; Armazena resultado
Sem ops ALU reg-reg general-purpose, A é o "workspace".
Movimento de dados gira em torno de A:
MOV M, A ; Armazena A na memória (HL)
MOV B, A ; Copia A para registrador
STA 3000H ; Armazena A em endereço direto
A é o único registrador que pode escrever diretamente na memória (via STA, MOV M,A). Outros registradores devem mover através de A ou usar HL indireto.
Saltos/chamadas/retornos condicionais testam flags setadas por operações do acumulador:
JC LOOP ; Jump se Carry (do último ADD/SUB/ANA em A)
JZ EQUAL ; Jump se Zero (resultado A foi 0)
JP POS ; Jump se Positivo (bit sinal A 0)
JPE EVEN ; Jump se Paridade Par (paridade A)
Não existem instruções diretas "testar registrador B" — deve mover para A primeiro (MOV A,B então ORA A).
CPUs posteriores (8086, 68000, ARM, RISC-V) fornecem ALU registrador-registrador (ADD R1, R2, R3) e múltiplos registradores general-purpose, reduzindo gargalo do acumulador. A centricidade do acumulador no 8085 é marca registrada de sua geração.
Em essência: O acumulador do 8085 não é apenas um registrador — é o fulcro arquitetural em torno do qual todo instruction set, fluxo de dados, e modelo de programação pivotam.
Tecnologia Eletrônica © [www.351231.com]