Rappresentazione delle informazioni e operazioni binarie
Rappresentazione delle informazioni
Le informazioni (nel nostro caso i numeri) possono essere rappresentate attraverso l’utilizzo di diversi “alfabeti”. Nel nostro caso, gli alfabeti maggiormente utilizzati sono quelli:
- In base 10: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
- In base 8: {0, 1, 2, 3, 4, 5, 6, 7}
- In base 2: {0, 1}
Notazione posizionale
Dato un numero, scritto in un determinato alfabeto è possibile, attraverso l’utilizzo della notazione posizionale, calcolare il valore di un qualsiasi numero in base b:
- (111) Valore in base 2: 1 * 22 + 1 * 21 + 1 * 20 = 7
- (111) Valore in base 8: 1 * 82 + 1 * 81 + 1 * 80 = 73
- (111) Valore in base 10: 1 * 102 + 1 * 101 + 1 * 100 = 111
Conversioni tra basi
Dato un numero scritto in base 10, è possibile convertire quel numero in un numero di un qualsiasi altro alfabeto attraverso l’utilizzo delle divisioni ripetute. Questo avviene dividendo il numero N, attraverso l’uso della divisione intera, per il valore della base. Da questo si ricava un quoziente e un resto. Il resto farà parte della codifica finale, viceversa il quoziente verrà usato per un’altra divisione fino a quando sarà uguale a 0.
| N | b | R |
|---|---|---|
| 19 | 2 | 1 |
| 9 | 2 | 1 |
| 4 | 2 | 0 |
| 2 | 2 | 0 |
| 1 | 2 | 1 |
Calcolo del numero di bit
Per capire invece quanti bit (quindi quante posizioni) sono necessari per la rappresentazione di un numero N in base 2, occorre utilizzare la seguente formula:
n = Log2(N + 1)2
n = ⌈Log2(19 + 1)⌉ = ⌈4,1⌉ = 5
Operazioni binarie
Anche in base 2, è possibile effettuare un'operazione di somma:
- (77)10 + (156)10 = (233)10
Somma binaria:
01001101 + 10011100 = 11101001
1 * 27 + 1 * 26 + 1 * 25 + 0 * 24 + 1 * 23 + 0 * 22 + 1 * 21 + 1 * 20 = 233
Overflow
Nel caso in cui il nostro calcolatore possa rappresentare in codifica binaria vari numeri naturali attraverso un numero limitato di bit si può incorrere in un errore chiamato overflow.
- (125)10 + (156)10 = (281)10 n=8
Sottrazione binaria:
10101011 + 11010000 = OVERFLOW → 00011101
Sottrazione binaria
Oltre alla somma è possibile effettuare anche la sottrazione:
- (166)10 - (77)10 = (89)10
10101010 - 01001101 = 01011001
1 * 26 + 1 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 89
-
Codifica e Rappresentazione delle Informazioni
-
6 - Modelli di rappresentazione
-
Rappresentazione complemento a due
-
Rappresentazione cartesiana dei sottospazi