la codifica digitale - unipamath.unipa.it/~epifanio/elementi_informatica/lezione3bn.pdf · sistema...
TRANSCRIPT
![Page 1: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/1.jpg)
La codifica digitale
![Page 2: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/2.jpg)
Elementi di Informatica Chiara Epifanio
Il computer e il sistema binario
Il computer elabora esclusivamente numeri.
Ogni immagine, ogni suono, ogni informazione per essere “compresa” e rielaborata dal calcolatore deve essere prima trasformata in una sequenza di numeri.
Il computer usa il passaggio di corrente elettrica come“alfabeto” per codificare tutte le informazioni.
La corrente elettrica ha solo due stati: “presenza” e “assenza”. Pertanto l’alfabeto usato dal computer è un alfabeto binario.
Codifica digitale
![Page 3: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/3.jpg)
Elementi di Informatica Chiara Epifanio
Il computer e il sistema binario
Ogni informazione elaborata dal computer è costruita con due soli simboli: “0” e “1”.
Bisogna tradurre ogni informazione in sequenze di 0 e 1.
La “traduzione” si chiama codifica e poiché si usano solo due simboli allora si chiama codifica binaria.
I simboli 0 e 1 si chiamano anche bit (contrazione delle parole inglesi: binary digit = cifra binaria).
Codifica digitale
![Page 4: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/4.jpg)
Elementi di Informatica Chiara Epifanio
Il computer e il sistema binario
Per quanto detto il computer è capace di riconoscere due soli stati della corrente e ad ognuno di essi associa un valore (0 o 1).
Un linguaggio che si basa su due soli caratteri si chiama “linguaggio binario”.
Poiché nel caso del calcolatore i caratteri sono due numeri (0 o 1), diciamo che il calcolatore fa uso del sistema (di numerazione) binario.
Codifica digitale
![Page 5: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/5.jpg)
Elementi di Informatica Chiara Epifanio
Il computer e il sistema binario
Quindi ogni dato immesso nel calcolatore, o ogni istruzione impartita, deve essere scritta utilizzando stringhe (sequenze) di 0 e 1, ossia in linguaggio binario.
Il linguaggio binario è il linguaggio macchina, ossia quello compreso e usato dalla macchina (il computer) per eseguire le istruzioni o immagazzinare i dati.
Quando usiamo il computer il Sistema Operativo “traduce”ogni nostro comando in una stringa di 0 e 1 (linguaggio macchina), per permettere al computer di eseguire le istruzioni impartite.
Codifica digitale
![Page 6: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/6.jpg)
I sistemi di numerazione
![Page 7: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/7.jpg)
Elementi di Informatica Chiara Epifanio
I sistemi di numerazione
Il SISTEMA NUMERICO, detto anche SISTEMA DI NUMERAZIONE, è l’insieme di tutti i numeri rappresentati usando uno stesso insieme di regole.
Ogni numero può essere rappresentato seguendo regole diverse, quindi lo stesso numero può avere rappresentazione diversa (in relazione alle regole seguite) malgrado il suo valore non cambi.
Sistemi di numerazione
12 1100XIIBase 10 Base 2Numerazione
Romana
![Page 8: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/8.jpg)
Elementi di Informatica Chiara Epifanio
I sistemi di numerazione
Ogni numero è rappresentato mediante dei segni elementari che si ripetono nella costruzione dei vari numeri.
Questi segni elementari si chiamano cifre.
Ogni cifra deve essere distinta dalle altre.
Il numero di cifre necessarie per rappresentare tutti i numeri può essere finito o infinito.
Sistemi di numerazione
![Page 9: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/9.jpg)
Elementi di Informatica Chiara Epifanio
I sistemi di numerazione possono essere distinti in due grandi categorie:
Tipi di sistemi di numerazione
Sistemi addizionali Sistemi posizionali
Sistemi di numerazione
Sistemi di numerazione
![Page 10: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/10.jpg)
Elementi di Informatica Chiara Epifanio
I sistemi numerici addizionali
I sistemi numerici addizionali sono quelli concettualmente più semplici, ma più difficili da capire (almeno per noi che utilizziamo correntemente un sistema numerico posizionale).Nei sistemi numerici addizionali ogni cifra assume sempre lo stesso valore indipendentemente dalla posizione occupata.Tra due cifre di una sequenza è sottointesa un’operazione.Non è necessario rappresentare lo zero.Sono necessari infiniti simboli diversi (cifre) per poter rappresentare tutti i numeri (infiniti).Il sistema addizionale più noto è quello romano.
Sistemi numerici addizionali
![Page 11: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/11.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione romano
Le cifre del sistema di numerazione romano sono:
I=1 V=5 X=10 L=50 C=100 D=500 M=1000
XX = 10+10 = 20
LXII = 50+10+1+1 = 62
XC = -10+100 = 90
Come si vede la lettera X vale sempre 10 indipendentemente dalla posizione che occupa.
Sistemi numerici addizionali
10 10
10
10
![Page 12: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/12.jpg)
Elementi di Informatica Chiara Epifanio
Nei sistemi numerici posizionali ogni cifra assume un valore diverso in relazione alla posizione occupata.Il numero di “cifre elementari distinte” si chiama base del sistema di numerazione.Tra due cifre di una sequenza è sottointesa un’operazione di somma di prodotti per una potenza della base.È necessario definire una cifra che abbia valore nullo.Sono sufficienti un numero finito di cifre (almeno due) per poter rappresentare tutti i numeri.Il sistema posizionale più noto è quello decimale.
I sistemi numerici posizionali
Sistemi numerici posizionali
![Page 13: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/13.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione decimale
Nel sistema decimale si usano 10 cifre distinte (0,1,2,3,4,5,6,7,8,9) per rappresentare qualsiasi numero. Quindi la base del sistema decimale è 10.
Per ottenere il valore di un numero decimale bisogna moltiplicare ogni cifra del numero per una potenza di 10 con esponente uguale alla posizione occupata dalla cifra, partendo dalla fine, meno uno; quindi sommare questi prodotti.
Con n “posti” si possono rappresentare esattamente 10n
numeri distinti a partire da 0.
Sistemi numerici posizionali
![Page 14: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/14.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione decimale
Consideriamo il numero 34553
34553 = 3 x 104 + 4 x 103 + 5 x 102 + 5 x 101 + 3 x 100
Infatti:
3 x 10.000 + 4 x 1.000 + 5 x 100 + 5 x 10 + 3 x 1 =
30.000 + 4.000 + 500 + 50 + 3 = 34553
Sistemi numerici posizionali
![Page 15: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/15.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione decimale
Quindi nel numero 34553 la stessa cifra ha un valore diverso in relazione alla posizione occupata.
3 4 5 5 3
3
50
500
4.000
30.000
Sistemi numerici posizionali
![Page 16: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/16.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione decimale
I numeri negativi si rappresentano col segno meno.
Il numero -8888 è costituito tutto dalla stessa cifra (8), ma ogni cifra ha un valore diverso in relazione alla posizione che occupa.
- 8 8 8 8
8
80
800
8.000
Sistemi numerici posizionali
![Page 17: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/17.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione in base n
Possiamo scegliere n cifre diverse e creare un sistema di numerazione in base n.
Per esempio in base 16 (sistema esadecimale) le cifre sono: 0 1 2 3 4 5 6 7 8 9 A B C D E F.
Per ottenere il valore di un numero decimale bisogna moltiplicare ogni cifra del numero per una potenza di 16 con esponente uguale alla posizione occupata dalla cifra, partendo dalla fine, meno uno; quindi sommare questi prodotti.
Con n posti si possono rappresentare esattamente 16n numeri distinti a partire da 0.
Sistemi numerici posizionali
![Page 18: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/18.jpg)
Infatti…
Teorema:Sia b un intero non negativo (base).Ogni intero n>1 può essere espresso in maniera unica nella forma
n = a0·b0 + a1·b1 + a2·b2 +........... + am·bm
dove m è un intero non negativo e 0≤ ai <b.
Questo teorema ci permette di rappresentare i numeri in qualunque base b.La sequenza sarà la rappresentazione del numero n in base b.
In particolare se b=2, allora otteniamo la rappresentazione binaria di n. Nel sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (<b=2).Se quindi ci viene dato un numero non in forma decimale, per determinare qual è il suo valore in forma decimale, basta applicare la formula del teorema.
![Page 19: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/19.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione esadecimale
Il numero 5BF2 è uguale a:
5 B F 2
2x160=2
15x161=240
11x162=2816
5x163=20480
Pertanto sommando i prodotti ottenuti si ha che:(5BF2)16 = (23538)10
![Page 20: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/20.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione binario
Nel sistema binario si usano solo 2 cifre distinte (0,1) per rappresentare qualsiasi numero.
La base del sistema binario è 2.
Per ottenere il valore di un numero decimale bisogna moltiplicare ogni cifra del numero per una potenza di 2 con esponente uguale alla posizione occupata dalla cifra, partendo dalla fine, meno uno; quindi sommare questi prodotti.
Con n posti si possono rappresentare esattamente 2n numeri distinti a partire da 0.
Sistemi numerici posizionali
![Page 21: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/21.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione binario
Consideriamo il numero (1001010)2
(1001010)2 <-> 1 x 26 + 0 x 25 + 0 x 24 + 1 x 23 + 0 x 22 +1 x 21 + 0 x 20
Infatti:
1 x 64 + 0 x 32 + 0 x 16 + 1 x 8 + 0 x 4 + 1 x 2 +0 x 1 = 64 + 8 + 2 = (74)10
Sistemi numerici posizionali
![Page 22: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/22.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione binario
Quindi nel numero (1001010)2 la stessa cifra ha un valore diverso in relazione alla posizione occupata.
1 0 0 1 0 1 0
0
21=2
0
23=8
0
0
26=64
Sistemi numerici posizionali
![Page 23: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/23.jpg)
Elementi di Informatica Chiara Epifanio
Il sistema di numerazione binario
Il numero (111111)2 = 63 è costituito tutto dalla stessa cifra (1), ma ogni cifra ha un valore diverso in relazione alla posizione che occupa.
1 1 1 1 1 1
20=1
21=2
22=4
23=8
24=16
25=32
Sistemi numerici posizionali
![Page 24: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/24.jpg)
Conversione dal sistema decimale al sistema binario: il metodo delle divisioni successive
1) Dividere il numero per 2 e conservare il resto della divisione,
2) ripetere il passo precedente sul risultato finché non si arriva ad ottenere 1,
3) leggere 1 e tutti i resti dall’ultimo al primo per ottenere il numero in forma binaria.
![Page 25: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/25.jpg)
Elementi di Informatica Chiara Epifanio
Metodo delle divisioni successive
3 91
219 2
91 2
41 220 2
10
39 = 1
Sistemi numerici posizionali
![Page 26: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/26.jpg)
Elementi di Informatica Chiara Epifanio
Metodo delle divisioni successive
3 9 219 2
9 2
4 22 2
1
39 =1 0 0 1 1 1
Sistemi numerici posizionali
![Page 27: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/27.jpg)
Un secondo metodo
1) Trovare la più grande potenza di 2 più piccola del numero,
2) sottrarla al numero,
3) ripetere il procedimento sulla differenza fino ad arrivare al valore 1.
4) Scrivere 1 in corrispondenza di ogni potenza di 2 presente e 0 per quelle che non figurano.
![Page 28: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/28.jpg)
Sia n = 155
155 - 128 = 2727 - 16 = 1111 - 8 = 33 - 2 = 11 - 1 = 0
Sia n = 155
155 - 128 = 2727 - 16 = 1111 - 8 = 3
Sia n = 155
155 - 128 = 2727 - 16 = 1111 - 8 = 33 - 2 = 1
Sia n = 155
155 - 128 = 2727 - 16 = 1111 - 8 = 33 - 2 = 11 - 1 = 0
Sia n = 155
155 - 128 = 2727 - 16 = 11
Sia n = 155
155 - 128 = 2727 - 16 = 1111 - 8 = 33 - 2 = 11 - 1 = 0
155 = 27 +24 +23 +21 +20 → 10011011
Sia n = 155
155 - 128 = 27 20 = 121 = 222 = 423 = 824 = 1625 = 3226 = 6427 = 12828 = 256
Conversione secondo le potenze di 2
![Page 29: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/29.jpg)
Elementi di Informatica Chiara Epifanio
La somma di due numeri binari
La somma di due numeri binari viene eseguita in modo analogo a quella dei numeri decimali.
I numeri binari si sommano a due a due.
Si allineano i due numeri a partire dall’ultima cifra e si sommano ricordando che:
1 + 1 = 0 col resto di 10+ 1 = 1 col resto di 01+ 0 = 1 col resto di 00+ 0 = 0 col resto di 0
Sistemi numerici posizionali
![Page 30: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/30.jpg)
Elementi di Informatica Chiara Epifanio
La somma di due numeri binari
8
30
38
+=
0011111
011001
00
![Page 31: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/31.jpg)
Elementi di Informatica Chiara Epifanio
La somma di due numeri binari
+=
0011111
011001
00
+=
1011011
011001
11
1011
01
91
59
150
Sistemi numerici posizionali
![Page 32: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/32.jpg)
Elementi di Informatica Chiara Epifanio
La differenza di due numeri binari
La differenza di due numeri binari viene eseguita in modo analogo a quella dei numeri decimali.
I numeri binari si sottraggono a due a due.
Si allineano i due numeri a partire dall’ultima cifra e si sottraggono ricordando che:
0 – 1 = 1 con un “prestito”–1 – 1 = 0 con un “prestito”–1 – 0 = 1 con un “prestito”
Sistemi numerici posizionali
![Page 33: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/33.jpg)
Elementi di Informatica Chiara Epifanio
La differenza di due numeri binari
=1011011
11
1011
0001 00
– 91
59
32
Sistemi numerici posizionali
![Page 34: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/34.jpg)
Elementi di Informatica Chiara Epifanio
La differenza di due numeri binari
=1011011
11
1011
0001 00
–
=001
1111 01011
0
1111 01
–
Sistemi numerici posizionali
101
46
55
![Page 35: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/35.jpg)
Elementi di Informatica Chiara Epifanio
La rappresentazione in complemento in base due
Complemento a due
Se dobbiamo rappresentare i numeri interi negativi nel sistema binario (e in particolare nel computer) non possiamo utilizzare il segno meno, ma dobbiamo utilizzare una particolare codifica detta: “complemento a due”.
La rappresentazione in complemento a due può avvenire solo se tutti i numeri sono rappresentati utilizzando lo stesso numero di cifre (stessa lunghezza).
Con questo tipo di rappresentazione ogni successione di 0 e 1 di lunghezza n fissata rappresenta numeri positivi o negativi.
![Page 36: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/36.jpg)
Elementi di Informatica Chiara Epifanio
La rappresentazione in complemento in base due
Supponiamo di utilizzare n cifre per rappresentare il numero x.
La rappresentazione del numero x in complemento a due coincide con la rappresentazione binaria del numero 2n-x.
Ricordiamo che con n cifre binarie possiamo rappresentare 2n numeri interi che, con questa rappresentazione, saranno in parte positivi e in parte negativi.
N.B.: Sfruttando le proprietà della numerazione binaria èstato definito un altro metodo empirico per calcolare il complemento in base due di un numero: si trasformano le cifre 0 in 1 e viceversa e si somma 1 al valore ottenuto.
Complemento a due
![Page 37: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/37.jpg)
Esempio
Vogliamo complementare in base due il numero 10011001.
Primo metodo:(10011001)’=28-10011001=
100000000-10011001=01100111
Secondo metodo:10011001
01100110
01100111
![Page 38: La codifica digitale - UniPamath.unipa.it/~epifanio/Elementi_Informatica/lezione3bn.pdf · sistema binario quindi ogni numero sarà espresso con le sole cifre 0 e 1 (](https://reader030.vdocuments.mx/reader030/viewer/2022040309/5f1f3e491b9a6d026c323e35/html5/thumbnails/38.jpg)
Elementi di Informatica Chiara Epifanio
Notiamo che con la rappresentazione in complemento a due:
I numeri che cominciano con 1 sono tutti negativi.
I numeri che cominciano con 0 sono tutti positivi.
Utilizzando n cifre si possono rappresentare 2n–1 numeri negativi e 2n–1–1 numeri positivi oltre lo zero.
Non si ha bilanciamento tra numeri positivi e negativi perchélo zero viene rappresentato come un numero positivo.
Complemento a due