Operazioni con i numeri binari

Addizione

Per effettuare la somma di due o più numeri binari, bisogna tenere presente le seguenti regole:

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0 (con riporto di 1)

Facciamo la somma di questi 3 numeri binari: 0111, 1010, 0110:

0
1
1
1
+
1
0
1
0
+
0
1
1
0
=
1
0
1
1
1

Non ci credete ? Provate allora a convertire i numeri.


Sottrazione

Per effettuare la sottrazione tra due o più numeri binari bisogna tenere in considerazione le seguenti regole:

0 - 0 = 0
1 - 0 = 1
1 - 1 = 0
0 - 1 = 1 (con prestito di 1)

Proviamo a sottrarre il numero binario 00110 dal numero binario 10011:

1
0
0
1
1
-
0
0
1
1
0
=
1
1
0
1

Anche qui, se non ci credete potete usare le conversioni.

Esiste anche un altro metodo per effettuare le sottrazioni, quello del complemento:

Facciamo un esempio con il sistema decimale, se dobbiamo sottrarre 6 da 13 procediamo così:

Facciamo il complemento a 10 (perchè stiamo usando il sistema decimale) del minuendo (6) ottenedo 4; Sommiamo il complemento (4) al sottraendo (13) ottenendo 17; togliamo da questo il 10 (sempre perchè stiamo usando il sistema decimale) avendo come risultato 7, infatti 13 - 6 = 7 (o no?)

Riportiamo lo stesso esempio usando questa volta il sistema binario.

Il numero 13 diventa 1101, il numero 6 diventa 0110; il complemento a 2 (binario) del numero 0110 (6) è 01010; sommiamo questo numero al sottraendo: 01010 + 01101 = 10111 (23); togliamo da questo il numero 10000 (sarebbe 16 decimale perchè 2 alla 4 fa 16, 4 perchè stiamo usando 4 cifre) e otteniamo 00111 (7). Avrete notato che invece di effettuare l' ultima sottrazione basta togliere dal numero ottenuto sommando il complemento e il sottraendo la cifra più significativa. Infatti complemento + sottraendo = 10111, togliamo l' MSB e otteniamo 00111.

Esiste anche un metodo molto semplice per ottenere il complemento a 2 di un numero binario e consiste nell' invertire i singoli bit del numero al quale si vuole fare il complemento a 2 e sommare 1 a questo numero. Esempio:

Vogliamo fare il complemento a 2 del numero 1001, invertiamo allora i singoli bit e otteniamo 0110. Sommiamo 1 a 0110 ottenendo 0111 (infatti il complemento a 2 del numero 1001 è 0111).

La procedura di "invertimento bit" è chiamata complemento a 1.

Non ci crederete ma esiste ancora un metodo più semplice per ottenere il complemento a 2 e consiste nel lasciare invariati i bit, del numero al quale si vuol fare il complemento a 2, a partire da destra fino al primo 1 e tutti gli altri invertirli. Esempio:

Il complemento a 2 del numero binario 10100100 è 01011100, infatti a partire da destra (dall' LSB) lasciamo invariati i bit fino ad incontrare il primo 1, mentre tutti gli altri li invertiamo.


Moltiplicazione

Anche in questo caso esistono delle regole ben precise:

0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1

Moltiplichiamo questi due numeri binari: 0101 e 0010:

0
1
0
1
x
0
0
1
0
=
0
0
0
0
+
0
1
0
1
--
=
0
1
0
1
0

Come nel sistema decimale, anche nel sistema binario la moltiplicazione è assimilabile a una sequenza di somme del moltiplicando per se stesso tante volte quante indicate dal moltiplicatore.


Divisione

La divisione è l'operazione più complessa del sistema binario (come nel sistema decimale) in quanto per effettuarla viene usato il metodo delle successive sottrazioni. Esempio:

Proviamo a fare la seguente divisione 1100 : 100 procediamo così:

1100
-
100
= 1a volta
1000
-
100
= 2a volta
100
-
100
= 3a volta
0

quante volte abbiamo sottratto 100 prima di ottenere lo zero ? 3 volte e quindi il 3 è il risultato della divisione (ovviamente in binario).