Calculadora de Complemento a 2
Decimal ↔ complemento a 2 en 4 a 64 bits, con hexadecimal, complemento a 1 y el procedimiento paso a paso.
Se calcula en tu navegador — nada se envíaConvierte un número decimal a complemento a 2 y de vuelta, paso a paso
Procedimiento paso a paso
Cómo funciona el complemento a 2
Respuesta rápida: para escribir un número negativo en complemento a 2, toma su valor absoluto en binario con todos los bits, invierte cada bit y súmale 1. Para −5 en 8 bits: 5 = 0000 0101 → invertir → 1111 1010 → sumar 1 → 1111 1011. Los positivos son binario normal con ceros a la izquierda, y el primer bit es el signo: 0 si es positivo, 1 si es negativo. Para leerlo de vuelta se hace lo mismo al revés: si el primer bit es 1, invierte y suma 1 para obtener la magnitud, y ponle el signo menos.
Con n bits caben los valores de −2ⁿ⁻¹ a 2ⁿ⁻¹ − 1 — de −128 a 127 en 8 bits —, por eso la calculadora revisa el rango según los bits que elijas. Las computadoras usan el complemento a 2 porque tiene un solo cero y la suma binaria normal funciona con negativos sin casos especiales: 5 + (−5) = 0000 0101 + 1111 1011 = 1 0000 0000, y el acarreo que sale del bit más alto simplemente se descarta.
El resultado muestra también el patrón en hexadecimal (FB), lo que significan esos mismos bits leídos sin signo (251) y el complemento a 1, que es solo invertir los bits sin sumar 1. El complemento a 1 tiene dos ceros (0000 y 1111) y por eso su rango llega solo a −7 en 4 bits, mientras que el complemento a 2 llega a −8. Todo se calcula en tu navegador.
Tabla de complemento a 2 de 4 bits
| Bits | Sin signo | Complemento a 2 | Complemento a 1 |
|---|---|---|---|
| 0000 | 0 | 0 | 0 |
| 0001 | 1 | 1 | 1 |
| 0010 | 2 | 2 | 2 |
| 0011 | 3 | 3 | 3 |
| 0100 | 4 | 4 | 4 |
| 0101 | 5 | 5 | 5 |
| 0110 | 6 | 6 | 6 |
| 0111 | 7 | 7 | 7 |
| 1000 | 8 | −8 | −7 |
| 1001 | 9 | −7 | −6 |
| 1010 | 10 | −6 | −5 |
| 1011 | 11 | −5 | −4 |
| 1100 | 12 | −4 | −3 |
| 1101 | 13 | −3 | −2 |
| 1110 | 14 | −2 | −1 |
| 1111 | 15 | −1 | −0 |
Rango según el número de bits
| Bits | Mínimo | Máximo |
|---|---|---|
| 4 | −8 | 7 |
| 8 | −128 | 127 |
| 16 | −32,768 | 32,767 |
| 32 | −2,147,483,648 | 2,147,483,647 |
| 64 | −9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |
Errores comunes
| Error | Por qué está mal | Cómo hacerlo |
|---|---|---|
| Invertir antes de completar los bits | 101 invertido es 010, pero 5 en 8 bits es 0000 0101, que invertido da 1111 1010. | Escribe primero los n bits y luego invierte. |
| Sumar 1 antes de invertir | El orden importa: primero se invierte y después se suma 1. | 5 → 0000 0101 → 1111 1010 → 1111 1011. |
| Leer un patrón negativo como sin signo | 1111 1011 es 251 sin signo, pero −5 en complemento a 2. | Revisa el primer bit antes de leer el valor. |
| Elegir muy pocos bits | 200 no cabe en 8 bits con signo (el máximo es 127). | Usa 16 bits, o la lectura sin signo. |
| Extender un negativo con ceros | 1011 (−5 en 4 bits) rellenado como 0000 1011 se vuelve +11. | Extiende el signo: copia el primer bit — 1111 1011. |
Tablas de referencia
Preguntas frecuentes
¿Cuál es el rango del complemento a 2 en 8 bits?
De −128 a 127. En general, n bits cubren de −2ⁿ⁻¹ a 2ⁿ⁻¹ − 1: con 4 bits de −8 a 7, con 16 bits de −32,768 a 32,767 y con 32 bits de −2,147,483,648 a 2,147,483,647. Hay un negativo más que positivos porque el cero ocupa uno de los patrones no negativos.
¿Cómo se pasa de complemento a 2 a decimal?
Mira el primer bit. Si es 0, léelo como binario normal. Si es 1, invierte todos los bits, súmale 1 y ponle el signo menos: 1111 1011 → 0000 0100 → 0000 0101 = 5 → −5. Atajo: el primer bit vale −2ⁿ⁻¹ y el resto suma normal, así que −128 + 123 = −5.
¿Cuál es la diferencia entre complemento a 1 y complemento a 2?
El complemento a 1 solo invierte los bits; el complemento a 2 los invierte y le suma 1. El complemento a 1 tiene dos ceros (0000 y 1111 en 4 bits) y un rango de −7 a 7; el complemento a 2 tiene un solo cero y llega a −8. Ese cero único, y que la suma normal funcione, es la razón por la que todas las computadoras modernas usan complemento a 2.
¿Cómo se saca el complemento a 2 de un número binario?
Invierte todos sus bits y súmale 1. Por ejemplo, el complemento a 2 de 0110 (6) es 1001 + 1 = 1010, que en 4 bits representa −6. Es decir, sacar el complemento a 2 de un número equivale a cambiarle el signo.