logo

Diferencia entre la técnica de representación en complemento a 1 y la representación en complemento a 2

Requisito previo: representación de números binarios negativos

complemento a 1 de un número binario es otro número binario que se obtiene alternando todos los bits que contiene, es decir, transformando el bit 0 en 1 y el bit 1 en 0. Ejemplos:



Let numbers be stored using 4 bits 1's complement of 7 (0111) is 8 (1000) 1's complement of 12 (1100) is 3 (0011)>

complemento a 2 de un número binario es 1 sumado al complemento a 1 del número binario. Ejemplos:

Let numbers be stored using 4 bits 2's complement of 7 (0111) is 9 (1001) 2's complement of 12 (1100) is 4 (0100)>

Estas representaciones se utilizan para números con signo.

El diferencia principal entre el complemento a 1 y complemento a 2 es que el complemento a 1 tiene dos representaciones de 0 (cero) - 00000000, que es cero positivo (+0), y 11111111, que es cero negativo (-0); mientras que en el complemento a 2, solo hay una representación para cero: 00000000 (0), porque si sumamos 1 a 11111111 (-1), obtenemos 100000000, que tiene nueve bits de longitud. Dado que sólo se permiten ocho bits, el bit más a la izquierda se descarta (o se desborda), dejando 00000000 (-0), que es lo mismo que un cero positivo. Ésta es la razón por la que generalmente se utiliza el complemento a 2.



Otra diferencia es que al sumar números usando el complemento a 1, primero hacemos una suma binaria y luego agregamos un valor de acarreo final. Pero el complemento a 2 tiene solo un valor para cero y no requiere valores de acarreo.

El rango del complemento a 1 para un número de n bits es de -2n-1-1 a 2n-1-1 mientras que el rango del complemento a 2 para n bits es de -2n-1a 2n-1-1.

botón j

Hay 2n-1números válidos en complemento a 1 y 2nortenúmeros válidos en complemento a 2.



Diferencia entre la representación del complemento a 1 y la representación del complemento a 2 en forma tabular:

Criterios Complemento a 1 Complemento a 2
Definición El complemento a 1 de un número binario se obtiene invirtiendo todos sus bits. El complemento a 2 de un número binario se obtiene sumando 1 al complemento a 1 del número.
Rango de valores que se pueden representar con n bits De -2^(n-1) + 1 a 2^(n-1) – 1 De -2^(n-1) a 2^(n-1) – 1
Número de representaciones del cero Se puede representar de dos maneras (todos 0 y todos 1). Se puede representar de una sola manera (todos 0).
Suma de números positivos y negativos. Igual que la suma binaria sin signo. Igual que la suma binaria sin signo.
Resta de números Resta el número menor del mayor y luego agrega un bit de signo al resultado. Suma el número negativo al positivo usando la suma binaria.