Red de conocimiento informático - Conocimiento del nombre de dominio - Problemas con códigos BCD basados ​​en principios de microcomputadoras

Problemas con códigos BCD basados ​​en principios de microcomputadoras

El código BCD utiliza un código binario de cuatro dígitos para representar un número decimal. Hay muchos tipos de códigos BCD: código 8421, código 2421, código resto 3 y código Gray.

Códigos BCD de uso común

Número decimal 8421 código 2421 código resto 3 códigos Código Gray

0 0000 0000 0011 0000

1 0001 0001 0100 0001

2 0010 0010 0101 0011

3 0011 0011 0110 0010

4 0100 0100 0110 0010

5 0101 0101 1000 1110

6 0110 0110 1001 1010

7 0111 0111 1010 1000

8 1000 1110 1011 1100

9 1001 1111 1100 0100

p>

El número representado por el código BCD parece un número binario, pero no es un número binario real

Número decimal codificado en binario, denominado código BCD (decimal codificado en binario). ). Este método utiliza 4 dígitos. La combinación de códigos binarios representa los diez símbolos decimales 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9. Hay 16 combinaciones de números binarios de 4 dígitos. En principio, 10 de ellas se pueden seleccionar como códigos para representar los diez números 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 en decimal. sistema. . El código BCD más utilizado se llama código 8421BCD y 8.4.2.1 son los valores de bits de números binarios de 4 dígitos. Al hacer clic aquí obtendrá la tabla de correspondencia entre números decimales y la codificación 8421BCD.

1. Conversión de código BCD y número decimal

Conversión de código BCD y número decimal La relación es intuitiva y la conversión mutua también es muy simple. Convierta el número decimal 75,4 a BCD. código como:

75.4=(0111 (0101.0100)BCD Si el código BCD 1000 0101.0101 se convierte en un número decimal, como por ejemplo: (1000 0101.0101)BCD=85.5

Nota : el mismo código binario de 8 bits representa El valor es diferente cuando se considera que representa un número binario y cuando se considera que representa un número decimal codificado en binario

Por ejemplo: 00011000, cuando. se considera un número binario, su valor es 24; pero cuando se usa como código BCD de 2 dígitos, su valor es 18.

Otro ejemplo es 00011100. Si se considera un número binario, su valor es 28, pero no puede considerarse como un código BCD, porque en el código 8421BCD, es un código ilegal

2. formatos utilizados de código BCD en las computadoras, a saber, código BCD separado y código BCD combinado.

El llamado código BCD separado utiliza los cuatro bits de orden inferior de un byte para codificar un dígito de un número decimal. Por ejemplo, el formato de almacenamiento del número 82 es:

_ _ _1 0 0 0 _ _ _ _0 0 1 0 donde _ representa un valor irrelevante

El código BCD combinado. almacena dos números decimales en un byte. El formato de almacenamiento del Ejemplo 82 es 1000 0010

p>

3. Suma y resta de códigos BCD

Dado que la codificación es para representar cada número decimal. con un conjunto de números binarios de 4 dígitos, por lo tanto, si este código BCD se entrega directamente a la operación de la computadora, dado que la computadora siempre trata los números como números binarios, el resultado puede ser incorrecto. : use código BCD para encontrar 38+49.

La solución es hacer esto. El resultado de la operación de suma binaria se corrige sumando 6. Esta corrección se llama ajuste BCD. la operación de suma binaria se corrige al resultado de la operación de suma del código BCD. Cuando se suman dos números BCD de dos dígitos, el resultado de la operación de suma binaria se modifica mediante las reglas correctas.

Reglas de corrección:

(1) Si el resultado de sumar dos números BCD correspondientes es al dígito superior sin acarreo, si el resultado obtenido es menor o igual a 9, entonces no se necesita corrección; el resultado obtenido es Cuando el resultado es mayor que 9 y menor que 16 se corrige el bit sumando 6.

(2) Si el resultado de sumar dos números BCD correspondientes tiene un acarreo al bit superior (es decir, el resultado es mayor o igual a 16), el bit se corregirá sumando 6

(3) Cuando el resultado de la corrección del bit bajo hace que el bit alto sea mayor que 9, el bit alto se corrige sumando 6.

Los siguientes ejemplos verifican la exactitud de las reglas anteriores.

Usa el código BCD para encontrar 35+21 Código BCD para encontrar 25+37 Usa el código BCD para encontrar 38+49 Usa el código BCD para encontrar 42+95

Usa el código BCD para encontrar 91+83 Use el código BCD para encontrar 94+7 Use el código BCD para encontrar 76+45

Cuando se usan dos códigos BCD combinados para restar, cuando hay un bit de préstamo desde el bit bajo hasta el bit alto Debido a que "pedir prestado uno para hacer dieciséis" y "pedir prestado uno para hacer diez" serán 6 más que el resultado correcto, por lo que cuando hay un bit prestado, se puede utilizar el "método de corrección de restar 6" para corregirlo. y restando dos códigos BCD, primero realice la operación de acuerdo con las instrucciones de suma y resta binaria, y luego calcule el resultado Utilice la instrucción de ajuste BCD para ajustar y obtener el resultado correcto de la operación decimal. De hecho, las computadoras tienen instrucciones de ajuste para combinar números BCD e instrucciones de ajuste para separar números BCD. Además, el programa también puede convertir la suma y resta de códigos BCD en números binarios antes de la operación, y luego la computadora procesa los números binarios después de la operación, los resultados de los números binarios se convierten en códigos BCD. programa