Excesso-3 (XS-3) é um código BCD auto-complementar onde cada dígito decimal é representado por seu valor binário +3. Converter para BCD padrão (8421) simplesmente requer subtrair 3 (0011).
| Entrada Excesso-3 (E3 E2 E1 E0) | Valor Decimal | Saída BCD (B3 B2 B1 B0) |
|---|---|---|
| 0000 | -3 (inválido) | 0001* (don't care / erro) |
| 0001 | -2 (inválido) | 0010* |
| 0010 | -1 (inválido) | 0011* |
| 0011 | 0 | 0000 |
| 0100 | 1 | 0001 |
| 0101 | 2 | 0010 |
| 0110 | 3 | 0011 |
| 0111 | 4 | 0100 |
| 1000 | 5 | 0101 |
| 1001 | 6 | 0110 |
| 1010 | 7 | 0111 |
| 1011 | 8 | 1000 |
| 1100 | 9 | 1001 |
| 1101 | 10 (inválido) | 1010* (don't care) |
| 1110 | 11 (inválido) | 1011* |
| 1111 | 12 (inválido) | 1100* |
*Entradas XS-3 inválidas (0–2, 10–12) são condições don't-care; saída pode ser 0000 ou flag de erro.
BCD = XS-3 − 0011 (subtração binária). Pode ser implementado com:
B0 = E0' (inverte LSB) B1 = E1 ⊕ E0 (XOR) B2 = E2 ⊕ (E1·E0) (XOR com AND) B3 = E3 ⊕ (E2·E1·E0) (XOR com AND de 3 entradas) (Derivado da subtração de 0011 com propagação de empréstimo.)
Usado em calculadoras legadas, instrumentos digitais e unidades aritméticas onde XS-3 simplifica subtração por complemento de 9 (inverte bits).
Tecnologia Eletrônica © [www.351231.com]