El complemento a 2 es una forma de representar números negativos en el sistema binario.
Binario (positivo) - Complemento a 4 (negativo) | Decimal |
---|---|
0111 | 7 |
0110 | 6 |
0101 | 5 |
0100 | 4 |
0011 | 3 |
0010 | 2 |
0001 | 1 |
0000 | 0 |
1111 | −1 |
1110 | −2 |
1101 | −3 |
1100 | −4 |
1011 | −5 |
1010 | −6 |
1001 | −7 |
1000 | −8 |
Complemento a dos con enteros de 4 bits
El complemento a dos de un número N , expresado en el sistema binario con n dígitos, se define como:
donde total de números positivos será y el de negativos , siendo n el número de bits. El 0 contaría como positivo, ya que los positivos son los que empiezan por 0 y los negativos los que empiezan por 1 .
Veamos un ejemplo:
tomemos el número expresado en binario es , con 6 dígitos, y calculemos su complemento a dos:
Al representarlo con 6 dígitos el bit más significativo es 0. Puede parecer farragoso, pero es muy fácil obtener el complemento a dos de un número a partir de su complemento a uno, porque el complemento a dos de un número binario es una unidad mayor que su complemento a uno, es decir:
Otra forma de calcularlo es representando en binario el número y empezando por el bit menos significativo, que es el de la derecha, avanzamos hacia la izquierda hasta encontrar el primer 1, a partir de este, invertimos ceros y unos: