Ci sono soltanto tipi di persone al mondo : quelli che conoscono la codifica binaria e quelli che non la conoscono
Leggendo questa frase forse si può pensare che non abbia senso , ma riflettendo un po’ , si capisce. Infatti , i numeri possiamo rappresentarli in maniera diversa. Scelta una base con e un inseme con simboli rappresentati come , quindi avremo che la rappresentazione di un numero è seguita dalla seguente formula :
Example
I numeri in base ( quindi ) sono infatti costituiti dai simboli . Infatti il numero costituito da che applicando la formula abbiamo con ( il numero di cifre ) :
Per comodità scriveremo per indicare la . La codifica favorita dai computer è quella binaria.
Traduzione da binario a 10
Come possiamo tradurre una sequenza di e in un numero in base ( in modo per noi umani di capire di che numero si tratta ). Bisogna usare la formula , infatti per , avremo che :
Traduzione da 10 a binario
Per tradurre da base si divide sempre per e poi si scrive il resto della divisione ( se pari ) o ( se dispari ) , infatti per avremo che :
quindi .
Codifica in complemento a due
Fissato il di bit a disposizione , nella codifica a complemento a due la sequenza di bit rappresenta :
dove è importante . Inoltre per rappresentare questa codifica useremo .
Notiamo inoltre che fissati bit possiamo rappresentare il seguente insieme di numeri :
Example
infatti con bit possiamo rappresentare :
La procedura per scrivere un numero negativo decimale in complemento a due e la seguente :
- prendo il valore assoluto del numero
- inverto tutti i bit
- aggiungo
Example
Per , utilizziamo la , quindi avremo che :
- prendo
- inverto e ottengo
- aggiungo e ottengo quindi
Somma tra due numeri in
Per fare la somma tra due numeri in complementi a due , bisogna sempre “ignorare” il bit che si aggiunge alla fine in più , che sarebbe di overflow.
Supponiamo di voler fare in complemento a due , quindi siccome , otteniamo che :
ovvero proprio