Calculadora de complemento a dos
Escribe un número entero con signo o pega un patrón binario o hexadecimal y elige el tamaño de palabra. La calculadora muestra los bits en complemento a dos, el valor hex, la lectura con y sin signo y, para los negativos, los pasos desde el valor absoluto.
Funciona en tu navegador: nada de lo que escribes se envía a ningún sitio.
Cómo usarla
- Escribe el valor. Elige Decimal para un número como -42, o Binario / Hex para descifrar un patrón de bits.
- Elige el tamaño: 8, 16, 32 o 64 bits. Un patrón binario o hex corto se completa con ceros a la izquierda.
- Lee los bits en complemento a dos (en grupos de cuatro), el valor hex y el patrón leído con y sin signo. Para los negativos se muestran los tres pasos de manual.
Cómo funciona el complemento a dos
Con n bits, un negativo x se guarda como 2ⁿ + x. En la práctica es lo mismo que escribir |x| en binario, invertir todos los bits y sumar 1. Para volver, mira el bit de signo: 0 significa que el valor es el propio número binario; 1, que hay que restar 2ⁿ al valor sin signo.
| Tamaño |
Rango con signo |
−1 se guarda como |
| 8 bits |
−128 … 127 |
FF |
| 16 bits |
−32.768 … 32.767 |
FFFF |
| 32 bits |
−2.147.483.648 … 2.147.483.647 |
FFFFFFFF |
Ejemplo resuelto
Escribamos −42 en 8 bits.
- Paso 1: 42 en binario es 0010 1010.
- Paso 2: invertido, 1101 0101.
- Paso 3: más 1, 1101 0110, que es D6 en hex.
Sin signo, 1101 0110 vale 214, y 214 − 256 = −42: el patrón significa −42. Para 8 bits la calculadora muestra el rango -128 … 127.
Errores frecuentes
- Olvidar el tamaño. −1 es FF en 8 bits y FFFFFFFF en 32. Los mismos bits valen cosas distintas según el tamaño: 1111 1111 es −1 en un byte, pero 255 como byte bajo de un valor de 16 bits.
- Sumar 1 antes de invertir. El orden es invertir y después sumar 1.
- Buscar el positivo de −128. El valor más negativo no tiene pareja positiva con el mismo tamaño: invertir 1000 0000 y sumar 1 vuelve a dar 1000 0000.
Preguntas frecuentes
¿Cómo se calcula el complemento a dos de un número negativo?
Escribe el valor absoluto en binario con el tamaño elegido, invierte todos los bits (complemento a uno) y suma 1. Para −42 en 8 bits: 42 es 0010 1010, invertido 1101 0101, más 1 da 1101 0110, que en hex es D6.
¿Cómo se lee un número en complemento a dos?
Si el bit más alto es 0, el número es el valor binario normal. Si es 1, es negativo: resta 2 elevado al número de bits al valor sin signo. 1101 0110 sin signo es 214, y 214 − 256 = −42.
¿Qué diferencia hay entre complemento a uno y complemento a dos?
El complemento a uno solo invierte los bits y tiene dos ceros (0000 0000 y 1111 1111). El complemento a dos suma 1 más: hay un único cero y la suma y la resta funcionan igual con y sin signo. Por eso los procesadores guardan así los enteros con signo.
¿Qué rango cabe en 8, 16, 32 y 64 bits?
De −2^(n−1) a 2^(n−1) − 1: de −128 a 127 en un byte, de −32.768 a 32.767 en 16 bits, unos ±2.100 millones en 32 bits y unos ±9,2 × 10^18 en 64 bits. La calculadora muestra el rango exacto del tamaño elegido.
¿Qué pasa si escribo 200 con 8 bits?
200 no cabe en un byte con signo, pero sí en uno sin signo, así que se toma como el patrón 1100 1000. Leído con signo, ese patrón vale −56. Los números menores que −128 o mayores que 255 se rechazan.