Conversor float a IEEE-754
El 3.14 en precisión doble se guarda como 0x40091EB851EB851F: un bit de signo, once de exponente y 52 de mantisa, cada parte por separado. Decodifique también volcados hexadecimales y reconozca ceros, subnormales, infinitos y NaN de un vistazo. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Valor de entrada
- 3,14
- Ancho IEEE-754: 32
- 64
- Sentido de la conversión
- From decimal
- Ancho de precisión
- 64
- Formato de salida
- binary64
- Número de bits
- 64
- Cadena hex
- 40091EB851EB851F
patrón hex y binario, gratis
Qué guarda realmente un número en coma flotante
Casi todos los procesadores guardan los números decimales en el formato estándar de coma flotante, que reparte un número fijo de bits en tres partes. El bit de signo indica si el valor es positivo o negativo. El exponente fija la escala y se guarda con un sesgo fijo para no necesitar signo propio. La mantisa guarda las cifras, con un uno inicial implícito en los números normales. La precisión doble reparte 64 bits en 1, 11 y 52; la simple lo concentra todo en 32. La misma disposición codifica, sin marcas adicionales, el cero con signo, los subnormales cercanos a cero, el infinito y NaN.
Cuándo mirar los bits y errores habituales
Ver el patrón ayuda cuando un valor leído de un volcado de firmware, de una captura de red o de un archivo no cuadra, o cuando explica en clase por qué la aritmética de coma flotante se comporta como lo hace. Pegue una palabra de ocho dígitos hexadecimales para precisión simple o de dieciséis para doble y recuperará el decimal y su categoría. Los errores típicos son elegir la precisión equivocada, leer los bytes en el orden contrario (aquí se sigue el orden habitual big-endian, del byte más significativo al menos significativo) y olvidar que el exponente guardado incluye el sesgo. Un texto que no es un número se rechaza en lugar de adivinarlo.
Qué puede hacer con ella
Enseñar campos de signo, exponente y significando
Muestre a los estudiantes el diseño exacto de bits para valores de libro, incluidos normales, subnormales, ceros con signo, infinitos y NaN, con pasos deterministas para hojas de trabajo.
Decodificar volcados hex de firmware y capturas
Pegue una palabra hex de ocho o dieciséis dígitos de un volcado de memoria o un paquete y recupere el float decimal más la categoría sin escribir un script de un solo uso.
Preguntas frecuentes
¿Cómo convierto un número decimal a su patrón hexadecimal de coma flotante?
Escriba el número, elija precisión simple o doble y obtendrá la palabra hexadecimal, la cadena binaria y cada parte por separado. Por ejemplo, 3.14 en precisión doble da 0x40091EB851EB851F.
¿Qué diferencia hay entre precisión simple y doble?
La simple (binary32) usa 32 bits: uno de signo, ocho de exponente y veintitrés de mantisa. La doble (binary64) usa 64 bits: uno de signo, once de exponente con sesgo 1023 y 52 de mantisa.
¿Cómo se guardan el infinito y NaN?
Ambos llevan un exponente formado solo por unos. Si la mantisa es toda ceros, el valor es infinito, positivo o negativo según el bit de signo; si algún bit de la mantisa vale uno, el valor es NaN.
¿Qué es un número subnormal?
Es un valor con el exponente todo a cero y una mantisa distinta de cero. Rellena el hueco entre el cero y el menor número normal, a costa de perder precisión; la herramienta lo indica en su categoría.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/fmt/ieee754 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":3.14,"decimal":1}'const res = await fetch("https://api.kit.forhosting.com/fmt/ieee754", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": 3.14,
"decimal": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fmt/ieee754",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": 3.14,
"decimal": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fmt/ieee754", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":3.14,"decimal":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":3.14,"decimal":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fmt/ieee754", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"value": 3.14,
"decimal": 1
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fmt.ieee754",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_bits | 64 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Un conversor de flotante IEEE-754 muestra el patrón de bits exacto que usa un ordenador para un número en coma flotante. Introduzca un valor decimal como 3.14 o menos uno, elija precisión simple binary32 o doble binary64, y la herramienta devuelve la palabra hexadecimal canónica, la cadena binaria completa, el bit de signo, el campo de exponente sesgado, los bits de significando y una etiqueta de categoría para números normales, subnormales, ceros con signo, infinitos y NaN. También puede pegar un volcado hex o una cadena de bits y decodificarla de vuelta a decimal, de modo que volcados de firmware, trazas de red y ejercicios de libro compartan un solo diseño determinista. El texto decimal no numérico se rechaza con invalid_input en lugar de coercerse en silencio. La ruta es aritmética pura de Worker vía DataView—sin red, sin semillas aleatorias, sin dependencia del reloj—así el ejecutor gratuito del navegador y la API de prepago devuelven el mismo JSON cada vez para la misma entrada.
Qué almacenan IEEE-754 binary32 y binary64
El mismo diseño codifica valores especiales sin etiqueta aparte: un exponente de todos unos con significando cero es infinito con signo; un exponente de todos unos con significando distinto de cero es un NaN; un exponente de todos ceros con significando cero es cero con signo; un exponente de todos ceros con significando distinto de cero es un número subnormal que llena el hueco cerca de cero. Ingenieros que depuran serialización, docentes que explican el error de coma flotante e ingenieros inversos que leen volcados hex necesitan ver ese diseño de forma explícita. IEEE-754 es el formato de intercambio que casi cada CPU, GPU y tiempo de ejecución de lenguaje moderno usa para aritmética en coma flotante binaria. Un valor binary32 ocupa treinta y dos bits: un bit de signo, ocho bits de exponente con sesgo ciento veintisiete, y veintitrés bits explícitos de significando con un uno líder implícito en números normales. Un valor binary64 ocupa sesenta y cuatro bits: un bit de signo, once bits de exponente con sesgo mil veintitrés, y cincuenta y dos bits de significando. Esta capacidad no inventa una codificación personalizada: usa los getters y setters de flotante big-endian de DataView de la plataforma para que la cadena hex que obtiene coincida con el volcado de memoria convencional de una palabra IEEE big-endian, y la cadena binaria es simplemente esos bytes expandidos bit a bit de más significativo a menos significativo.
Cómo invocar la API y qué devuelve
Envíe un cuerpo JSON con al menos un campo fuente. Para codificar un decimal, fije value (alias decimal, number, n) a un número finito o a Infinity, menos Infinity o NaN cuando esos especiales sean representables en su cliente. Para decodificar un patrón de bits, fije hex a una cadena hexadecimal con 0x opcional de hasta ocho dígitos para binary32 o dieciséis para binary64, o fije binary (alias bits) a una cadena de ceros y unos de longitud coincidente; los patrones más cortos se rellenan a la izquierda con ceros. precision opcional (alias format, width) selecciona ancho de treinta y dos o sesenta y cuatro bits y acepta nombres como single, double, binary32 y binary64; el valor por defecto es sesenta y cuatro. direction opcional (alias mode) fuerza from_decimal, from_hex o from_binary; auto elige según los campos presentes y prefiere value cuando hay varios. En caso de éxito la respuesta incluye value (con formas de cadena para NaN e infinitos), is_neg_zero, precision, nombre de format, bits, hex, hex_prefixed, binary, sign_bit, exponent_bits, mantissa_bits y significand_bits, sign como más o menos uno, biased_exponent, unbiased_exponent cuando está definido, category, exponent_bias, source, message y steps ordenados. La validación fallida—falta de todo campo fuente, texto decimal no numérico, dígitos hex inválidos o caracteres no binarios—devuelve invalid_input y nunca se cobra. El precio es un $0.002 fijo por petición correcta con unidad item y precio marginal unitario cero.
Consejos prácticos, límites y búsquedas relacionadas
Prefiera precision sesenta y cuatro cuando su origen sea un número JavaScript u otro tipo anfitrión binary64, y pase a treinta y dos solo cuando coincida con almacenamiento float o float32 en el cable o en un formato de archivo. En ida y vuelta, codifique un valor y luego decodifique el hex devuelto con la misma precision y confirme que category y los campos coinciden. Recuerde que muchos decimales como un décimo no tienen expansión binaria finita; el hex que ve es la codificación IEEE correctamente redondeada, no un error. Use ejemplos de cero con signo, infinito y NaN al enseñar especiales: codificar cero y cero negativo produce bits de signo distintos y las categorías pos_zero y neg_zero aunque JSON imprima ambos como cero y la herramienta exponga is_neg_zero para ese caso. Mantenga los patrones dentro del ancho de bits publicado; los patrones más largos que la precision elegida se rechazan en lugar de truncarse, lo que cambiaría el valor en silencio. Esta página se dirige a quienes buscan un conversor float a IEEE-754, un volcado hex de precisión simple o doble, o una herramienta de patrón de bits en coma flotante binaria; no es un conversor de coma flotante decimal (decimal64), ni una calculadora de precisión arbitraria, ni una herramienta general hex a binario de enteros—use la capacidad hermana hex a binario cuando solo necesite conversión de base entera. Las tareas fallidas que devuelven invalid_input no consumen saldo prepago, lo que mantiene baratos los scripts exploratorios cuando los alumnos envían cadenas basura a propósito.
Casos de integración
Depurar la serialización binaria de flotantes
Confirme que un float escrito por un servicio coincide con el hex IEEE-754 que otro servicio lee, tanto en formatos de cable binary32 como en volcados adyacentes a JSON binary64.
Preguntas técnicas
¿Qué es IEEE-754 binary64?
Binary64 es el formato de doble precisión de 64 bits: 1 bit de signo, 11 bits de exponente (sesgo 1023) y 52 bits de significando. Es el formato que usan JavaScript Number y la mayoría de las CPU para valores double.
¿Cómo convierto un float a hex?
Envíe value con el número decimal y precision opcional 32 o 64. Los campos hex y hex_prefixed de la respuesta son el patrón de bits IEEE-754 big-endian.
¿Puedo decodificar hex de vuelta a un float?
Sí. Fije hex al patrón de bits (0x opcional) y precision al ancho. El value de la respuesta es el decimal decodificado (o cadenas NaN / Infinity cuando corresponda).
¿Qué ocurre con una entrada no numérica?
El texto decimal que no es un número devuelve invalid_input y no se cobra. Los especiales válidos Infinity, -Infinity y NaN se aceptan como codificaciones IEEE.
¿Es gratis el conversor IEEE-754?
La herramienta del navegador es gratis y se ejecuta en local. Las llamadas API usan saldo KIT prepago a $0.002 por petición correcta; las tareas fallidas nunca se cobran.