Vai al contenuto

Convertitore di basi numeriche

Converti un numero intero senza segno tra le basi 2, 8, 10 e 16 senza perdere cifre dei grandi interi.

BIN ↔ OCT ↔ DEC ↔ HEX

Converti un intero

I tuoi dati rimangono in questo browser.

Usa cifre valide per la base scelta, senza segno, prefisso, separatore o punto decimale. Massimo 4,096 cifre.

FF

255 (base 10) equivale a

Come usare il convertitore di basi numeriche

  1. Inserisci il numero intero senza segno che possiedi. Scegli il suo sistema di numerazione in Base di partenza: binario, ottale, decimale o esadecimale.
  2. Dopo aver modificato l'intero, seleziona Converti numero per applicarlo. Una volta convertito il valore, cambiare una delle basi aggiorna subito il risultato di sola lettura senza un'altra conferma. Ogni cifra intera viene conservata anche oltre l'intervallo sicuro di JavaScript Number.
  3. Usa Scambia basi per invertire una conversione completata. Il risultato esatto diventa il successivo valore di partenza, rendendo rapida la verifica di andata e ritorno ed evitando di riscrivere un lungo intero.
  4. Scegli Copia risultato per copiare un'equazione di testo semplice contenente entrambi i valori e i numeri delle due basi. Puoi incollarla in appunti, commenti del codice, fogli di lavoro o richieste di assistenza.

Come funzionano i sistemi numerici posizionali

La base indica quanti valori di cifra contiene un sistema numerico posizionale. Il binario usa 0 e 1; l'ottale da 0 a 7; il decimale da 0 a 9; l'esadecimale aggiunge A–F per i valori da dieci a quindici. Il contributo di una cifra è il suo valore moltiplicato per la base elevata alla posizione, contando da zero a destra. Per esempio, l'esadecimale 2F significa 2 × 16¹ + 15 × 16⁰, cioè 47 in decimale.

Per esprimere lo stesso intero in un'altra base, il convertitore ricava ripetutamente le cifre della base di destinazione dal valore intero esatto. Binario, ottale ed esadecimale si allineano particolarmente bene: una cifra ottale corrisponde a tre cifre binarie e una esadecimale a quattro. Per questo l'esadecimale è un modo compatto di scrivere lunghe sequenze di bit conservando lo stesso valore senza segno.

Il calcolo usa JavaScript BigInt anziché Number. Number non distingue più tutti gli interi adiacenti oltre 9,007,199,254,740,991; BigInt mantiene esatta l'aritmetica intera di dimensioni arbitrarie entro il limite fisso della pagina. Il convertitore interpreta ogni cifra valida e produce quelle di destinazione senza passare per l'aritmetica in virgola mobile.

Gli zeri iniziali non cambiano il valore di un intero, quindi il risultato viene normalizzato a un solo zero per zero oppure inizia con una cifra non nulla. Le lettere esadecimali sono accettate sia maiuscole sia minuscole e visualizzate in maiuscolo. Queste scelte cambiano la scrittura del numero, non il valore rappresentato.

Esempi svolti di conversione

Esempio 1: da 255 decimale a esadecimale

Inserisci 255, mantieni Decimale (base 10) come partenza e scegli Esadecimale (base 16). Il risultato è FF perché 255 = 15 × 16 + 15. Ogni F rappresenta il valore quindici. Scambiare le basi converte FF esattamente in 255.

Esempio 2: un grande intero binario oltre il limite sicuro di Number

Inserisci 100000000000000000000000000000000000000000000000000001 in binario e convertilo in decimale. Il risultato è 9,007,199,254,740,993, scritto senza separatori come 9007199254740993. È due unità sopra il limite degli interi sicuri di Number, ma questo convertitore lo conserva esattamente e lo riconverte nelle cifre binarie originali.

Quando è utile convertire le basi

Regole di inserimento e limiti

Tutte le direzioni di conversione delle basi numeriche supportate

Direzione della conversioneMetodoEsempio esatto
Binario a Ottale (bin a oct)Leggi in base 2; poi scrivi in base 8.1010102 = 528
Binario a Decimale (bin a dec)Leggi in base 2; poi scrivi in base 10.1010102 = 4210
Binario a Esadecimale (bin a hex)Leggi in base 2; poi scrivi in base 16.1010102 = 2A16
Ottale a Binario (oct a bin)Leggi in base 8; poi scrivi in base 2.528 = 1010102
Ottale a Decimale (oct a dec)Leggi in base 8; poi scrivi in base 10.528 = 4210
Ottale a Esadecimale (oct a hex)Leggi in base 8; poi scrivi in base 16.528 = 2A16
Decimale a Binario (dec a bin)Leggi in base 10; poi scrivi in base 2.4210 = 1010102
Decimale a Ottale (dec a oct)Leggi in base 10; poi scrivi in base 8.4210 = 528
Decimale a Esadecimale (dec a hex)Leggi in base 10; poi scrivi in base 16.4210 = 2A16
Esadecimale a Binario (hex a bin)Leggi in base 16; poi scrivi in base 2.2A16 = 1010102
Esadecimale a Ottale (hex a oct)Leggi in base 16; poi scrivi in base 8.2A16 = 528
Esadecimale a Decimale (hex a dec)Leggi in base 16; poi scrivi in base 10.2A16 = 4210

Domande frequenti

Perché FF esadecimale equivale a 255 decimale?

La F a sinistra vale quindici sedicine e quella a destra quindici unità: 15 × 16 + 15 = 255. In binario, lo stesso valore è 11111111.

Posso inserire lettere esadecimali minuscole?

Sì. Le lettere da a a f sono accettate e normalizzate in maiuscolo nel risultato visualizzato e copiato.

Perché gli zeri iniziali sono scomparsi?

Gli zeri iniziali non cambiano l'intero senza segno. Il convertitore restituisce un numero normalizzato. Se il riempimento a larghezza fissa è significativo per un protocollo o formato di file, aggiungilo dopo averne verificato la specifica.

Gli interi molto grandi vengono arrotondati?

No. Gli input validi vengono interpretati e convertiti con BigInt, conservando ogni cifra intera fino al limite di 4,096 caratteri. Non viene usata alcuna conversione a Number in virgola mobile.

Un input esadecimale indica testo o un colore?

No. Viene trattato soltanto come intero senza segno. Lo strumento non decodifica byte in caratteri, separa canali RGB, deduce una larghezza di memoria o applica regole di complemento a due con segno.