Conectar vía MCP →

Ingresar cálculo

Fórmula

Publicidad

Resultados

Complemento a uno
250
111110102 (8-bit)
Original (decimal) 5
Original (binario) 00000101
Complemento a uno (binario) 11111010
Complemento a uno (decimal) 250
Ancho de bit 8

¿Qué es el complemento a uno?

El complemento a uno de un número binario se obtiene invirtiendo (volteando) cada uno de sus bits: cada 0 pasa a ser 1 y cada 1 pasa a ser 0. Como el resultado depende de cuántos bits utilices, debes elegir un ancho de bit, por ejemplo 4, 8, 16 o 32 bits. Esta representación se empleaba en los primeros ordenadores para codificar números enteros con signo y sigue siendo relevante al estudiar la aritmética binaria y las sumas de verificación (checksums) para la detección de errores.

Valor binario de ocho bits con cada bit invertido para producir su complemento a uno
El complemento a uno invierte cada bit dentro del ancho de bits elegido.

Cómo usar esta calculadora

Introduce un número decimal no negativo, elige un ancho de bit y la calculadora ajustará el número a ese ancho mediante una máscara, invertirá todos los bits y te mostrará el resultado tanto en binario como en decimal. Si tu número es mayor de lo que permite el ancho elegido, solo se conservan los bits menos significativos dentro de ese ancho antes de invertirlos.

La fórmula explicada

Calculamos $$\text{Resultado} = \left(\sim\left(\text{Number} \,\&\, M\right)\right) \,\&\, M, \quad M = 2^{\text{Width}} - 1$$ El término \(2^{w} - 1\) es una máscara de w unos (para 8 bits sería \(11111111 = 255\)). El NOT bit a bit (\(\sim\)) invierte todos los bits de n, y la máscara descarta cualquier bit por encima del ancho elegido para que el resultado se mantenga dentro del rango.

Cuatro tiras de ancho de bits de 4, 8, 16 y 32 celdas mostradas con longitudes crecientes
El ancho de bits determina cuántos bits se invierten.

Ejemplo resuelto

Tomemos el número 5 con 8 bits. En binario, \(5 = 00000101\). Al invertir cada bit obtenemos \(11111010\), que equivale a 250 en decimal. Por tanto, el complemento a uno de 5 en 8 bits es 250. Con 4 bits, \(5 = 0101\), y al invertirlo queda \(1010 = 10\).

Preguntas frecuentes

¿En qué se diferencia el complemento a uno del complemento a dos? El complemento a dos suma 1 al complemento a uno, lo que evita tener dos representaciones distintas del cero.

¿Cuál es el complemento a uno de 0? Con 8 bits es \(11111111 = 255\): todos los bits se convierten en 1.

¿Por qué cambia el resultado según el ancho de bit? La inversión de bits depende de cuántos bits haya disponibles; los anchos más grandes añaden más unos a la izquierda, lo que produce un valor decimal mayor.

Última actualización: