El código Exceso-3 también recibe el nombre XS-3, es un código BCD no ponderado y autocomplementario que se utiliza para representar los números decimales. Este código es utilizado en las operaciones aritméticas porque resuelve las limitaciones del código 8421 BCD para sumar dos dígitos decimales cuya suma es mayor que 9. El código Exceso-3 usa un tipo especial de algoritmo, que difiere del sistema binario posicional o BCD normal no sesgado.
Podemos obtener fácilmente un código Exceso-3 de un número decimal simplemente añadiendo 3 a cada dígito decimal. Y luego escribiendo el número binario de 4 bits para cada dígito del número decimal. Partiendo de un número binario, podemos encontrar su representación en Exceso-3 con los siguientes pasos:
- Pasamos el número binario a decimal.
- Luego sumamos 3 a cada dígito del número decimal.
- Convertimos cada dígito decimal a binario.
También podemos sumar 0011 an cada código BCD de 4 bits del número decimal para obtener un código Exceso-3.
La tabla de los números decimales a Exceso-3:
Decimal | Código BCD | Exceso a 3 |
0 | 0000 | 0011 |
1 | 0001 | 0100 |
2 | 0010 | 0101 |
3 | 0011 | 0110 |
4 | 0100 | 0111 |
5 | 0101 | 1000 |
6 | 0110 | 1001 |
7 | 0111 | 1010 |
8 | 1000 | 1011 |
9 | 1001 | 1100 |
En exceso a 3, los códigos 1111 y 0000 no se utilizan. Vamos a ver un ejemplo de código Exceso-3.
Ejemplo 1: convertir el número decimal 31 a código Exceso-3
- Miramos en la tabla el código BCD de cada dígito: 31 -> 0011 y 1 -> 0001
- Añadimos 0011 a cada dígito:
- 0011+0011 = 0110
- 0001+0011 = 0100
- Resultado: El número decimal 31 en Exceso-3 es 0110 0100
¿Por qué se utiliza el código Exceso-3?
El código Exceso-3 tiene varias ventajas:
- Estos códigos son autocomplementarios.
- Estos códigos utilizan una representación sesgada.
- El código de exceso a 3 no tiene limitación, por lo que simplifica considerablemente las operaciones aritméticas.
- Los códigos 0000 y 1111 pueden causar fallos en latransmisión. El código Exceso-3 no usa estos códigos y ofrece una ventaja para la organización de la memoria.
- Estos códigos suelen ser códigos decimales binarios no ponderados.
- Este código tiene un papel vital en las operaciones aritméticas. Resuelve deficiencias que se encuentran cuando usamos el código 8421 BCD para sumar dos dígitos decimales cuya suma es mayor que 9.
Te puede interesar: Código Aiken