Conectar vía MCP →

Ingresar cálculo

Fórmula

Publicidad

Resultados

Two's Complement Binary (8-bit)
11111011
representación en complemento a dos
Valor sin signo 251
Valor con signo -5
Ancho de bits 8 bits

¿Qué es la Calculadora de Complemento a Dos?

El complemento a dos es la forma estándar en que los ordenadores almacenan los enteros con signo. Esta calculadora convierte cualquier número decimal en su representación binaria en complemento a dos para el ancho de bits que elijas (4, 8, 16 o 32 bits) y te muestra tanto el valor sin signo del patrón de bits como el valor con signo que esos bits representan.

Cómo usarla

Introduce un número decimal —positivo o negativo— y selecciona el ancho de bits. La herramienta reduce el número módulo \(2^{n}\), generando el patrón de bits exacto que almacenaría una CPU. Además te indica qué valor con signo decodifica ese mismo patrón, de modo que puedas comprobar la conversión de ida y vuelta.

La fórmula explicada

Para un campo de n bits, la representación sin signo es

$$u = ((x \bmod 2^{n}) + 2^{n}) \bmod 2^{n}$$

Esto «envuelve» los números negativos: en 8 bits, −5 se convierte en \(256 - 5 = 251\), cuyo binario es 11111011. Para decodificar un patrón de vuelta a un valor con signo, fíjate en el bit más significativo (MSB): si vale 1 (es decir, \(u \ge 2^{n-1}\)), el valor es \(u - 2^{n}\); en caso contrario, es simplemente \(u\). Una forma equivalente de negar un número es invertir todos los bits y sumar uno: \(\sim x + 1\).

$$\text{Unsigned} = \left(\,\text{Decimal} \bmod 2^{\text{Bits}}\,\right),\qquad \text{Signed} = \begin{cases} \text{Unsigned} & \text{Unsigned} < 2^{\,\text{Bits}-1} \\[4pt] \text{Unsigned} - 2^{\text{Bits}} & \text{otherwise} \end{cases}$$
Number line showing unsigned values wrapping into signed positive and negative ranges
Values at or above 2^(n-1) wrap to negative; the upper unsigned half maps to negative signed numbers.

Ejemplo resuelto

Convirtamos −5 a complemento a dos de 8 bits. Paso 1: \(2^{8} = 256\). Paso 2: \(u = ((-5 \bmod 256) + 256) \bmod 256 = 251\). Paso 3: 251 en binario es 11111011. Como el MSB vale 1, el valor con signo es \(251 - 256 = -5\), lo que confirma la conversión.

Step diagram converting a negative decimal to two's complement binary
Two's complement of a negative value: invert the bits of the magnitude, then add one.

Preguntas frecuentes

¿Qué ocurre si mi número es demasiado grande para el ancho de bits? Se «envuelve» (desbordamiento) módulo \(2^{n}\), exactamente como lo haría el hardware. Por ejemplo, 300 en 8 bits se convierte en \(300 - 256 = 44\).

¿Por qué el valor sin signo difiere del valor con signo? Los mismos bits pueden leerse de dos maneras. La lectura sin signo interpreta todos los bits como positivos; la lectura con signo trata el bit superior como un peso negativo.

¿Admite 64 bits? Esta herramienta soporta hasta los anchos habituales de 32 bits para mantener los resultados dentro de un margen de precisión seguro.

Última actualización: