Nella lezione di oggi vedremo i sistemi di numerazione, in particolare il sistema binario, quello decimale e quello esadecimale. Faremo insieme degli esercizi per comprenderne a pieno la logica e creeremo delle semplici procedure per convertire i sistemi di numerazione da binario a decimale e viceversa.
In questa serie di approfondimenti, vedremo insieme:
- L’informatica, concetti di base
- Hardware e Software
- I principali componenti di un PC
- Unità di misura e dispositivi di memorizzazione
- Sistemi di numerazione, binario, decimale ed esadecimale
- Codifica delle informazioni
- Il software
- Reti informatiche
Cosa imparerai in questa lezione:
- Cos’è un sistema di numerazione
- Le differenze tra sistema di numerazione decimale, binario ed esadecimale
- Come convertire un numero binario in decimale
- Come convertire un numero decimale in binario
I sistemi di numerazione posizionali
Definiamo un sistema di numerazione come una serie di simboli e di regole che permettano di rappresentare i numeri. Per definire un sistema di numerazione è quindi necessario conoscere i simboli che compongono il sistema, denominati cifre, e la sintassi, ossia l’insieme di regole che specificano come costruire i numeri.
Tra i diversi sistemi di numerazione troviamo:
- sistema addizionale, una particolare numerazione che rappresenta un numero attraverso delle operazioni di somme e sottrazioni, come ad esempio i numeri romani. IV (numero 4) dato da come 5 (V) meno 1 (I)
- sistema posizionale dove la singola cifra assume valori diversi in base alla posizione in cui si trova.
Andiamo ad esaminare il sistema posizionale nel dettaglio, partendo da un semplice esempio.
Il numero 747 ha all’interno due cifre uguali (7) che ho colorato in modo diverso per identificarle (rosso e blu), come si evince dall’esempio. Il sistema è posizionale perché attribuisce un peso diverso in base al posto in cui si trova il simbolo. La cifra meno rappresentativa, colorata i blu ha un valore di 7, mentre la stessa cifra colorata in rosso assume un valore di 700.
Sistema decimale
Il sistema decimale è composto da 10 cifre: 0 – 1 – 2 – 3 – 4 – 5- 6 – 7 – 8 – 9.
Ad esempio A56T non può essere un numero appartenente al sistema decimale perché A e T non appartengono ai simboli della numerazione.
Se prendiamo come esempio il numero 7707 possiamo scomporlo in unità, decine, centinaia e migliaia ottenendo:
7707 = 7 * 10^3 + 7 * 10^2 + 0 * 10^1 + 7 * 10^0
7 * 1000 + 7 * 100 + 0 * 10 + 7 * 1
7000 + 700 + 0 + 7
Di seguito vedremo come convertire il sistema decimale con altri sistemi, come quello binario.
Sistema binario
I dispositivi elettronici rappresentano le informazioni attraverso il sistema binario che è composto da soli 2 simboli 0 ed 1.
1025 è un numero binario? No, possiamo affermare che 1025 non può appartenere al sistema di numerazione binario perché al suo interno ci sono i simboli 2 e 5 che non appartengono al sistema.
La rappresentazione dei numeri binari è come quella decimale, in più possiamo dire che con n bit riusciamo a scrivere 2^n numeri diversi. Con 3 bit possiamo avere 8 numeri diversi, infatti partendo da 000 sino ad 111 abbiamo la seguente tabella:
- 000
- 001
- 010
- 011
- 100
- 101
- 110
- 111
Con 8 combinazioni di numeri diverse, che come vedremo successivamente, rappresentano i valori decimali da 0 a 7.
1 bit = 2 combinazioni diverse (combinazione 0 e combinazione 1)
2 bit abbiamo 2^n = 2^2 = 4 combinazioni diverse
- 00
- 01
- 10
- 11
Vediamo ora qual è il numero massimo che riusciamo a rappresentare con n bit. Con n bit riusciamo a rappresentare al massimo il numero 2^n-1.
- Con 1 bit abbiamo 2^1 – 1 = 1 – 1 = 1, uno è il massimo numero rappresentabile con 1 bit (1)
- Con 2 bit abbiamo 2^2 – 1 = 4 – 1 = 3, tre è il massimo numero rappresentabile con 2 bit (11)
- Con 3 bit abbiamo 2^3 – 1 = 8 – 1 = 7, sette è il massimo numero rappresentabile con 3 bit (111)
- Con 4 bit abbiamo: 2^4-1 = 16 – 1 = 15, quindici è il massimo numero rappresentabile con 4 bit (1111)
- Con 5 bit abbiamo: 2^5-1 = 32 – 1 = 31, trentuno è il massimo numero rappresentabile con 5 bit (11111)
- Con 6 bit (2^6-1) 63 è il numero (in decimale) più alto rappresentabile
Naturalmente si prosegue con 7, 8 bit e così via.
Sistema esadecimale
Il sistema esadecimale è un particolare sistema di numerazione composto da 16 simboli: : 0 – 1 – 2 – 3 – 4 – 5- 6 – 7 – 8 – 9 – A – B – C – D – E – F. Un sistema che come vedremo semplifica molto la lunghezza di una stringa di bit, infatti a parità di numero di cifre riesce a rappresentare numeri più elevati.
Nel sistema esadecimale il valore 10 è rappresentato dalla lettera A, il valore 11 dalla B e così via fino al numero 15 rappresentato dalla lettera F.
La tabella binario/decimale/esadecimale ci da l’idea dei diversi modi di rappresentare i numeri nei diversi sistemi. Ad esempio il numero 11 (leggo undici) nel sistema di numerazione decimale è rappresentato come B in esadecimale e 1011 (leggo uno zero uno uno) nel sistema binario.
Conversione binario/ decimale
Abbiamo visto sopra una tabella di conversione binario decimale, basta infatti individuare il valore in binario e leggerlo nella corrispondente colonna del sistema decimale. Il tutto si può leggere anche al contrario, nel senso che può essere individuato il numero decimale e trovare sulla tabella il valore in binario o anche in esadecimale.
La tabella vale per i numeri da zero a quindici. E’ possibile comunque convertire un qualsiasi numero binario in decimale, basta seguire un semplice algoritmo che abbiamo descritto nello specifico nell’articolo “convertire un numero binario in decimale con Scratch“.
Vediamo insieme come procedere alla conversione partendo da un esempio.
Convertire 1001 da base due a base dieci
- convertire 1001
- 1 * 2^3 + 0 * 2^2 + 0 * 2^1 + 1 * 2^0
- 1 * 8 + 0 * 4 + 0 * 2 + 1 * 1
- 8 + 0 + 0 + 1
Il risultato finale è 9 come si può evincere anche dalla tabella di conversione.
Quali sono i passaggi che abbiamo eseguito?
I passaggi che sono stati effettuati sono sostanzialmente 4
- nella prima riga abbiamo inserito il numero binario da convertire in decimale
- Step 1 – nella seconda riga inseriamo i valori 2^3, 2^2, 2^1, 2^0 partendo da sinistra (numero più significativo) verso da destra (numero meno significativo)
- Step 2 – nella terza riga inseriamo il valore delle potenze (2^3 = 8, 2^2 = 4, 2^1 = 2, 2^0 = 1).
- Step 3 – nella quarta riga, facciamo il prodotto tra il corrispondente valore della riga 1 (numero binario 0 o 1) e il valore della riga 4 (potenza di 2).
Il numero decimale sarà dato dalla somma dei valori della riga 4, (nella tabella rappresentata da step 3).
Conversione decimale-binario
Visto come convertire un numero da binario a decimale vedremo ora come convertire un numero decimale in binario. Per farlo abbiamo bisogno di effettuare una serie di divisioni, e vi farò vedere come farlo attraverso un semplice esempio
Convertiremo 92 (decimale) nel corrispondente numero binario.
Si parte con la costruzione di una tabella dove andremo ad inserire il numero, il divisore (che è fisso ed è la base 2), il risultato della divisione tra numero e divisore ed infine l’eventuale resto della divisione.
Andiamo dunque a vedere come convertire il numero 92. La prima cosa da fare è guardare la seconda riga della tabella:
- numero: 92
- divisore: 2
- risultato: 46
- resto: 0
Si passa alla riga successiva, spostando il risultato della divisione nella cella sottostante (risultato diventa numero della riga sotto), a questo punto nella riga 3 abbiamo
- numero: 46
- divisore: 2
- risultato: 23
- resto: 0
Si va aventi e si inserisce il risultato 23 nella riga sottostante, riga 4:
- numero: 23
- divisore: 2
- risultato: 11
- resto: 1
Si procede con la stessa procedura sino a quando il risultato diventa 0. Otteniamo la conversione da decimale a binario eseguendo questa semplice procedura, 92 in decimale diventa 1011100 nel sistema binario. Basta infatti leggere dal basso verso l’alto la colonna resto della tabella.
Esercizi svolti di conversione
Esercizi di conversione da binario a decimale
Convertire 1000 in binario
Si svolgono secondo la procedura descritta le varie fasi e si arriva al risultato di 8 (in decimale)
Convertire 11110 in decimale
Altri esercizi svolti in PDF sulla conversione da binario a decimale
Esercizi di conversione da decimale a binario
Convertire 35 in binario
Mappa concettuale sistemi di numerazione
Di seguito la mappa concettuale sistemi di numerazione, una semplificazione grafica dell’argomento.
Scarica la mappa concettuale da qui.
Nelle altre lezioni
Di seguito i link alle prossime lezioni:
- Concetti di base della tecnologia dell’informazione
- Hardware e Software. Input, output e fasi di lavoro di un PC
- Principali componenti di un PC. Tipologia di computer e la loro evoluzione
- Unità di misura. Conversioni, multipli, sottomultipli ed esercizi svolti
- Sistemi di numerazione, binario, decimale ed esadecimale. Esercizi di conversione
- Codifica delle informazioni, testi, immagini, video, suoni
- Il software: sistemi operativi e software operativi
- Reti informatiche, tipologia, topologia e componenti principali
Segui Digital Teacher anche sui canali social