4. Scăderea binară

Acasă » Electronică digitala » 02 - Aritmetică binară

  • Scăderea numerelor binare se realizează prin adunarea binară a unui număr pozitiv şi a unui număr negativ

Numere negative sub formă binară

Putem realiza operaţia de scădere binară utilizând aceleaşi metode standard împrumutate de la scăderea zecimală. Totuşi, dacă putem utiliza metoda deja cunoscută (şi mai uşoară) a adunării binare pentru efectuarea scăderii, ne va fi mai uşor. După cum am văzut, putem reprezenta numerele binare negative utilizând reprezentarea în complement faţă de doi plus un bit adiţional cu o valoare negativă. Să considerăm un exemplu:

710 - 510 (scădere)
710 + (-510) (adunare echivalentă)

Tot ce trebuie să facem este să reprezentăm numărul 7 şi -5 sub formă binară:

01112 = 7
10112 = -5

Nu ne mai rămâne decât să efectuăm adunarea binară:

  1111    <--- biţi ce trec mai departe
   0111
 + 1011
  ------
  10010   <--- ignorăm bit-ul suplimentar

răspuns = 00102 = 210

Din moment ce am definit numărul nostru ca fiind compus din trei biţi plus bitul cu valoare negativă, putem ignora al cincilea bit din răspuns (1), iar rezultatul final este 00102, sau +2, ceea ce reprezintă răspunsul corect.

Înlăturarea bit-ului suplimentar

O altă modalitate de a înţelege de ce înlăturăm al cincilea bit, este să ţinem minte că bit-ul din stânga are o valoare negativă, egală cu minus opt în cazul de faţă. Atunci când adunăm aceste două numere binare, realizăm de fapt o scădere a biţilor. În cazul operaţiei de scădere, cifrele nu sunt „duse” mai departe spre următoarea operaţie, ci sunt împrumutate.

Alte exemple

Să considerăm un alt exemplu, cu numere mai mari de data aceasta. Dacă vrem să adunăm -2510 cu 1810, trebuie să stabilim în primul rând numărul de biţi pe care numărul nostru îl va conţine în reprezentarea binară. Pentru a putea reprezenta cea mai mare valoare absolută posibilă în acest caz, 25, avem nevoie de cel puţin cinci biţi, plus un al şaselea bit pentru valoarea negativă. Să începem prin a reprezenta numărul 25 sub formă binară, şi apoi sub forma complementului faţă de doi:

+2510 = 0110012 (toţi cei şase biţi)
110012 = 1001102 (complementul faţa de unu)
complementul faţa de unu + 1 = complementul faţa de doi = 1001112
-2510 = 1001112 (forma finală)

Mai exact, -25 sub formă binară este de fapt suma dintre bit-ul negativ de pe poziţia a şasea cu valoarea de -32 şi ceilalţi cinci biţi (001112 = 710).

Să reprezentăm acum şi numărul 17 sub formă binară, folosind toţi cei şase biţi:

1810 = 0100102

Adunarea lor ne conduce la următorul rezultat:

     11
   100111
 + 010010
  --------
   111001

În acest caz nu avem un „surplus” de biţi după adunare, prin urmare, nu trebuie să „scăpăm” de niciunul din ei. Bitul din stânga este 1, ceea ce înseamnă că răspunsul, în complement faţă de doi, este negativ (ceea ce este corect). Pentru verificare, putem realiza conversia înapoi în forma zecimală prin însumarea produsului tuturor biţilor cu valorile lor respective, astfel:

(1 x -3210) + (1 x 1610) + (1 x 810) + (1 x 110) = -710

Răspunsul obţinut este corect (1810 - 2510 = -710).