Che cos’è una base numerica?

Una base numerica, o radice, è il numero di cifre utilizzate da un sistema numerico. Il sistema decimale, quello di uso comune, ha dieci cifre, da 0 a 9, e ogni posizione vale dieci volte quella alla sua destra. I computer usano il sistema binario, che ha solo 0 e 1, quindi ogni posizione vale il doppio di quella alla sua destra. Il sistema ottale, con le cifre da 0 a 7, e quello esadecimale, con le cifre da 0 a 9 e le lettere da A a F per rappresentare i valori da 10 a 15, sono modi compatti per scrivere numeri binari: una cifra ottale rappresenta esattamente 3 bit e una cifra esadecimale esattamente 4, quindi un byte è sempre composto da due cifre esadecimali.

Ecco lo stesso numero rappresentato in ciascuna base:

Decimale Binario Ottale Esadecimale
10 1010 12 A
42 101010 52 2A
255 11111111 377 FF
1000 1111101000 1750 3E8
65535 1111111111111111 177777 FFFF
-42 -101010 -52 -2A

Dove si usa ciascuna base

  • Binario: bit, flag, maschere di bit e maschere di sottorete, come 255.255.255.0, composta da 24 uno seguiti da 8 zeri.
  • Ottale: permessi dei file Unix, come chmod 755, dove ogni cifra rappresenta tre bit di permesso.
  • Decimale: numeri di uso comune.
  • Esadecimale: colori come #FF6600, valori dei byte, indirizzi di memoria, indirizzi MAC e punti di codice Unicode come U+00E9.

Descrizione dello strumento

Questo strumento converte numeri interi tra binario, ottale, decimale ed esadecimale. Tutti i convertitori di base numerica disponibili qui funzionano allo stesso modo, dal convertitore di basi numeriche generico a quelli dedicati a una singola coppia, come da decimale a binario o da esadecimale a decimale: lo strumento si avvia con le basi indicate nel nome e i menu Origine e Destinazione consentono di scegliere una qualsiasi delle quattro. Digita o incolla un numero: il risultato appare durante la digitazione, pronto per essere copiato. Se inserisci una cifra non prevista dalla base, come un 2 in un numero binario, viene mostrato un errore. Il pulsante di inversione scambia le basi di conversione.

Come funziona

Lo strumento legge il numero come un BigInt di JavaScript, un numero intero senza limiti di dimensione, così i valori a 64 bit e quelli più lunghi vengono convertiti esattamente, senza arrotondamenti: FFFFFFFFFFFFFFFF in esadecimale equivale a 18446744073709551615 in decimale. Sono accettati:

  • Un segno meno all’inizio, che viene mantenuto nel risultato: -42 in decimale equivale a -101010 in binario.
  • I prefissi usati nel codice: 0b per il binario, 0o per l’ottale e 0x per l’esadecimale; ad esempio, 0x1F viene convertito in 31.
  • Spazi e trattini bassi tra gruppi di cifre, come 1111 0000 o 1_000_000.
  • Lettere esadecimali maiuscole o minuscole. I risultati vengono scritti in maiuscolo.

Vengono convertiti solo numeri interi; se un numero contiene un punto decimale, viene mostrato un errore.