Conversor IEEE 754 (32 y 64 bits)
Convertir
Los números de punto flotante se guardan como un bit de signo, un exponente sesgado y una fracción (mantisa), y la diferencia entre lo que escribes y lo que realmente se almacena es la causa de incontables errores de redondeo. Este conversor muestra la representación IEEE 754 exacta de cualquier número decimal en float32 (simple, 1+8+23 bits, sesgo 127) y float64 (doble, 1+11+52 bits, sesgo 1023): la cadena de bits con colores, la palabra hex, el exponente sin sesgo y la mantisa, la categoría del valor (normal, subnormal, cero, infinito, NaN) y el valor realmente almacenado tras el redondeo. También funciona al revés — pega una palabra hex de 8 o 16 dígitos y obtén el número decodificado y su desglose completo. Útil para depurar serialización, shaders y código embebido, búferes de GPU y preguntas del tipo «¿por qué 0.1 + 0.2 != 0.3?». Se aceptan las entradas especiales Infinity, -Infinity y NaN. Todo corre localmente; no se sube nada.
- Signo
- 0 (+)
- Exponente
- 123 (2^-4)
- Mantisa
- 1.10011001100110011001101
- Almacenado
- 0.10000000149011612
Redondeado — float32 no puede almacenar este valor exactamente.
- Signo
- 0 (+)
- Exponente
- 1019 (2^-4)
- Mantisa
- 1.1001100110011001100110011001100110011001100110011010
- Almacenado
- 0.1
float32 = 1 signo + 8 exponente + 23 fracción bits; float64 = 1 + 11 + 52. El sesgo del exponente es 127 / 1023.
Cómo usar
- Mantén 'Decimal → bits' y escribe un número (p. ej. 0.1, -3.14, 1e10, Infinity, NaN) para ver float32 y float64.
- Lee la división signo / exponente / mantisa, la palabra hex y el valor almacenado; una nota avisa cuando float32 tuvo que redondear.
- Cambia a 'Bits → decimal', elige la precisión y pega una palabra hex para decodificarla a un número.
Preguntas frecuentes
- ¿Por qué el valor almacenado difiere de lo que escribí?
- La mayoría de las fracciones decimales no se pueden representar exactamente en punto flotante binario. La herramienta muestra el valor representable más cercano — p. ej. 0.1 en float32 es en realidad 0.100000001490116119384765625. Aparece una nota de redondeo cuando el valor float32 almacenado difiere de tu entrada; float64 almacena el mismo valor que JavaScript ya usa.
- ¿Qué significan los bits de colores?
- Rojo es el bit de signo (0 positivo, 1 negativo), azul es el exponente (sesgado: resta 127 para float32 o 1023 para float64 para obtener la potencia de dos) y verde es la fracción/mantisa. Para números normales la mantisa es 1.fracción; para subnormales es 0.fracción con el exponente mínimo.
- ¿Cómo se muestran infinito, NaN y cero?
- Un exponente todo unos con fracción cero es ±infinito; un exponente todo unos con fracción no nula es NaN; exponente y fracción todo ceros es ±cero (nota el bit de signo distintivo de -0); y un exponente todo ceros con fracción no nula es un número subnormal. La categoría se etiqueta en cada tarjeta.
- ¿Qué formato hex espera la decodificación?
- El hex big-endian de los bits crudos: 8 dígitos hex para float32 (p. ej. 3f800000 = 1.0) y 16 para float64 (p. ej. 3ff0000000000000 = 1.0). Un 0x inicial y los espacios se ignoran, y la entrada más corta se rellena con ceros a la izquierda.
Herramientas relacionadas
Conversor BCD (decimal codificado en binario)
Convierte decimal a y desde BCD 8421 — nibbles de 4 bits por dígito, bytes hex de BCD empaquetado y comprobación de validez BCD.
Conversor de código Gray
Convierte entre decimal, binario y código Gray (binario reflejado), en ambos sentidos, con ancho de bits opcional y una tabla de referencia 0-7.
Conversor de Complemento a Dos (8–64 bits)
Introduce un valor decimal, hex, binario u octal y mira su patrón de bits en complemento a dos de 8/16/32/64 bits, además de sus lecturas con y sin signo, hex, octal y complemento a uno — en tu navegador.
Conversor de Números Romanos
Convierte entre números arábigos y romanos de 1 a 3999.
Conversor de Bases Numéricas
Convierte números entre binario, octal, decimal y hexadecimal.
Conversor de Unidades
Convierte longitud, peso, temperatura, área, volumen, velocidad y tiempo.