Vai al contenuto
BINARYRainbow Bits

Bozza in revisione: il testo non è ancora stato approvato.

Che cos’è una base

Scriviamo i numeri con dieci cifre, da 0 a 9, e diamo per scontato che 352 significhi “tre centinaia, cinque decine e due unità”. In quella scrittura c’è un’idea potente: la stessa cifra vale di più o di meno a seconda della posizione che occupa. Il 5 di 352 vale cinquanta, quello di 520 vale cinquecento.

Un sistema che funziona così si chiama posizionale. Il numero di cifre diverse che usa si chiama base: il nostro sistema decimale ha base dieci.

Cifre, posizioni e pesi

In base dieci ogni posizione vale dieci volte quella alla sua destra: unità, decine, centinaia, migliaia. Il valore di una posizione si chiama peso ed è una potenza della base, contando le posizioni da destra a partire da zero:

352 = 3 × 10² + 5 × 10¹ + 2 × 10⁰ = 300 + 50 + 2

Niente obbliga a usare dieci cifre. Con una base b qualsiasi servono b cifre, da 0 a b − 1, e i pesi diventano le potenze di b: 1, b, b², b³ e così via.

Base Nome Cifre
2 binario 0 1
8 ottale 0 1 2 3 4 5 6 7
10 decimale 0 1 2 3 4 5 6 7 8 9
16 esadecimale 0–9 e A B C D E F

Oltre la base dieci le cifre normali non bastano, quindi si prendono in prestito le lettere: in esadecimale A vale dieci, B undici e così via fino a F, che vale quindici.

Il pedice dice la base

La scrittura 101 da sola è ambigua: in decimale è centouno, in binario è cinque. Per evitare equivoci si scrive la base come pedice: 101₁₀ e 101₂. Quando il pedice manca, di solito si intende la base dieci.

Contare in un’altra base

Un contachilometri mostra bene che cosa succede quando una posizione “si riempie”: la ruota torna a 0 e fa avanzare di uno la ruota alla sua sinistra. In base dieci succede dopo il 9, in base due già dopo l’1. Scegli una base e conta.

Cifre: 0 1

0000 in base 2, cioè 0 in base 10

In decimale: 0. Prova a superare l’ultima cifra della base.

In binario si conta così: 0, 1, 10, 11, 100, 101, 110, 111, 1000. Ogni volta che tutte le cifre sono al massimo, il passo successivo aggiunge una posizione: è lo stesso salto che in decimale porta da 999 a 1000.

Allenati a leggere i numeri binari.

Fonti

  • Donald E. Knuth, The Art of Computer Programming, vol. 2: Seminumerical Algorithms (§ 4.1 Positional number systems, § 4.4 Radix conversion), Addison-Wesley, 1997.