Tempo/Numeri

Convertitore di float IEEE 754

Numero decimale ↔ rappresentazione binaria IEEE 754 (precisione singola o doppia) — segno, esponente, mantissa, valori speciali.


            

Computers store fractional numbers in binary under the IEEE 754 standard — a sign, an exponent, and a mantissa, packed into a fixed number of bits. This tool shows that representation for any decimal number and parses it back into a number.

How to use it

Common uses

Things to keep in mind

Most decimal fractions (0.1, for example) have no exact binary representation — that's the root cause of the typical rounding errors seen in calculation results.

Comparing floating-point numbers for exact equality (===) is unreliable — check instead whether the difference is smaller than a small threshold (epsilon).

Articolo su questo strumento: IEEE 754: perché 0.1 + 0.2 non è uguale a 0.3 nel codice

Domande frequenti

Qual è la differenza tra precisione singola e doppia?

La precisione singola (float, 32 bit) dà circa 7 cifre decimali di precisione, quella doppia (double, 64 bit) circa 15-17. Il tipo Number di JavaScript usa la precisione doppia.

Perché alcuni numeri decimali perdono precisione?

IEEE 754 memorizza i numeri in binario, e molte frazioni decimali (come 0.1) non hanno una rappresentazione binaria finita esatta — quindi viene memorizzato il valore più vicino possibile, con un piccolo errore di arrotondamento.

Cosa significano NaN, Infinity e -0?

NaN è il risultato di un'operazione non valida come 0/0. Infinity/-Infinity appaiono quando un valore supera l'intervallo rappresentabile (es. dividere per 0). +0 e -0 sono due rappresentazioni bit diverse dello zero con segno, che sono comunque uguali come numeri.

Cosa sono i numeri subnormali (denormalizzati)?

Una modalità di rappresentazione speciale per numeri con un valore assoluto troppo piccolo per il formato normale — l'1 implicito iniziale della mantissa viene omesso, permettendo di avvicinarsi gradualmente allo zero a costo di parte della precisione.

Come si confrontano correttamente i numeri frazionari invece di verificare l'uguaglianza esatta?

Invece di a === b, si verifica se la differenza tra i numeri è inferiore a una piccola soglia (epsilon): Math.abs(a - b) < 1e-9. L'uguaglianza esatta non è quasi mai garantita a causa degli errori di arrotondamento.

Articoli: Tempo/Numeri

Tempo Unix: perché i computer contano il tempo dal 1970

Perché il 1° gennaio 1970 è diventato il punto di riferimento del tempo per la maggior parte dei sistemi informatici.

Espressioni cron: come decifrare una pianificazione di attività

Come decifrare un'espressione come */15 * * * * e sapere esattamente quando verrà eseguita l'attività.

Sistemi numerici: a cosa servono binario, ottale ed esadecimale

Perché il colore #FF5733 in CSS è scritto con cifre esadecimali anziché decimali.

Operazioni bit a bit: come funzionano AND, OR e XOR a livello di bit

In cosa l'AND bit a bit differisce da quello logico, e perché operare sui singoli bit di un numero.

Differenza tra date: perché contare i giorni è più complicato di quanto sembri

Perché sottrarre date in modo ingenuo può dare un risultato sbagliato a causa degli anni bisestili.

Calcolo dell'età: perché non è una semplice sottrazione di anni

Perché sottrarre semplicemente gli anni di nascita può dare un'età superiore di uno rispetto a quella reale.

Fusi orari: perché UTC non è la stessa cosa di GMT

Perché UTC non cambia mai due volte all'anno, mentre l'ora di Londra (GMT/BST) sì.

Calcolatrice di durata: come sommare correttamente ore, minuti e secondi

Perché sommando minuti e secondi bisogna "riportare" il resto alla cifra successiva, come nella somma decimale.

ISO 8601 Duration: come scrivere una durata in formato standard

Perché PT1H30M significa «1 ora 30 minuti» e non «1 minuto 30 ore».

Numero di settimana: perché paesi diversi contano le settimane in modo diverso

Perché il 1° gennaio a volte appartiene alla settimana 52 o 53 dell'anno precedente secondo lo standard ISO 8601.

Numeri romani: come funziona un sistema senza zero né posizioni

Perché IV significa 4 e non 6, e come funziona la regola della sottrazione nei numeri romani.

Numero in lettere: perché trasformare cifre in parole

Perché nei documenti bancari l'importo viene scritto sia in cifre che in lettere contemporaneamente.