Complemento a uno
Complemento a uno | Decimal |
---|---|
0111 | 7 |
0110 | 6 |
0101 | 5 |
0100 | 4 |
0011 | 3 |
0010 | 2 |
0001 | 1 |
0000 | 0 |
1111 | −0 |
1110 | −1 |
1101 | -2 |
1100 | −3 |
1011 | −4 |
1010 | −5 |
1001 | −6 |
1000 | −7 |
Complemento a uno con enteros de 4 bits
El complemento a uno de un número binario se define como el valor obtenido al invertir todos los bits en la representación binaria del número (intercambiando 0 por 1 y viceversa). Los complementos del número se componen como el negativo del número original, en algunas operaciones aritméticas. Dentro de una constante (de -1), el complemento a uno se comporta como el negativo del número original con adición binaria. Sin embargo, a diferencia del complemento a dos, estos números no han tenido un uso generalizado debido a problemas tales como el desplazamiento de -1, que negar cero da como resultado un patrón distinto de bit cero negativo, menos simplicidad con el préstamo aritmético, etc.
Un sistema de complemento a uno o el complemento aritmético de uno es un sistema donde los números negativos están representados por el inverso de las representaciones binarias de sus correspondientes números positivos. En tal sistema, un número es negado (convertido de positivo a negativo o viceversa) calculando el complemento de los unos. Un sistema de numeración de complementos de N-bit sólo puede representar enteros en el rango [−2N−1+1, 2N−1−1] mientras que el Complemento a dos puede expresar [−2N−1, 2N−1−1].
El sistema de numeración binaria de complemento a uno se caracteriza por el complemento bit de cualquier valor entero que es el negativo aritmético del valor. Es decir, invertir todos los bits de un número (el complemento lógico) produce el mismo resultado que restar el valor de 0.
Muchas computadoras tempranas, incluyendo el CDC 6600, el LINC, el PDP-1 y el UNIVAC 1107, usaron la notación de complemento a uno. Los sucesores del CDC 6600 continuaron usando el complemento a uno hasta finales de la década de los 80, y los descendientes de UNIVAC 1107 (la serie UNIVAC 1100/2200) todavía lo hacen, pero la mayoría de las computadoras modernas usan el complemento a dos.