5.2. Conversia binar-zecimal
5.2. Conversia binar-zecimal
Conversia numerelor binare la zecimale (baza-2 la baza-10) și invers este un concept important de înțeles deoarece sistemul de numerotare binară formează baza pentru toate sistemele informatice și digitale.
Sistemul de numărare zecimal sau "denary" folosește sistemul de numerotare de bază 10, unde fiecare cifră dintr-un număr ia una dintre cele zece posibile valori, numite "cifre", de la 0 la 9, de ex. 21310 (Două sute și treisprezece).
Dar, având 10 cifre (0 până la 9), sistemul de numerotare zecimal are și operații de adunare (+), scădere (-), înmulțire (×) și împărțire (÷).
Într-un sistem zecimal fiecare cifră are o valoare de zece ori mai mare decât numărul precedent și acest sistem de numerotare zecimal utilizează un set de simboluri b, împreună cu o bază q, pentru a determina ponderea fiecărei cifre în cadrul unui număr. De exemplu, 6 în 60 are o pondere mai mică decât 6 în 600. Atunci, într-un sistem binar de numerotare avem nevoie de un mod de a converti Zecimal în Binar și de la Binar la Zecimal.
Orice sistem de numerotare poate fi rezumat prin următoarea relație:
N = bi qi
unde:
N este un număr real pozitiv
b este digitul
q este valoarea bazei
și întregul (i) poate fi pozitiv, negativ sau zero
N = bn qn ... b3 q3 + b2 q2 + b1 q1 + b0 qo + b-1 q-1 + b-2 q-2... etc
Sistemul de numerotare zecimal
În sistemul de numerotare zecimal, bază-10 (den) sau denar, fiecare coloană cu numere întreg are valori de unități, zeci, sute, mii, etc., pe măsură ce ne deplasăm de-a lungul numărului de la dreapta la stânga. Din punct de vedere matematic, aceste valori sunt scrise ca 10o, 101, 102, 103 etc. Deci, fiecare poziție din stânga punctului zecimal indică o putere pozitivă crescută a lui 10. De asemenea, pentru numerele fracționare greutatea numărului devine mai negativă pe măsură ce ne mișcăm de la stânga la dreapta, 10-1, 10-2, 10-3 etc.
Așadar putem vedea că "sistemul de numerotare zecimal" are o bază 10 sau modulo-10 (uneori numit MOD-10) cu poziția fiecărei cifre în sistemul zecimal indicând mărimea sau ponderea acelei cifre deoarece q este egal cu "10" (de la 0 la 9). De exemplu, 20 (douăzeci) este același cu a spune 2x101 și prin urmare 400 (patru sute) este același cu 4x102 .
Valoarea oricărui număr zecimal va fi egală cu suma cifrelor sale înmulțită cu ponderile respective. De exemplu: N = 616310 (șase mii o sută șaizeci și trei) într-un format zecimal este egal cu:
6000 + 100 + 60 + 3 = 6163
sau poate fi scris reflectând ponderea fiecărei cifre ca:
(6 × 1000) + (1 × 100) + (6 × 10) + (3 × 1) = 6163
sau poate fi scrisă în formă polinomică ca:
(6 × 103) + (1 × 102) + (6 × 101) + (3 × 10o) = 6163
În cazul în care în acest exemplu de sistem de numerotare zecimal, cea mai la stânga cifră este cea mai semnificativă cifră sau MSD, iar cea mai la dreapta cifră este cea mai puțin semnificativă cifră sau LSD. Cu alte cuvinte, cifra 6 este MSD, din moment ce are poziția din partea stângă cu cea mai mare pondere, iar numărul 3 este LSD, deoarece are poziția din dreapta cu cea mai mică pondere.
Sistemul de numerotare binar
Sistemul de numerotare binar este cel mai fundamental sistem de numerotare în toate sistemele digitale și bazate pe computer și numerele binare respectă același set de reguli ca și sistemul de numerotare zecimală. Dar, spre deosebire de sistemul zecimal care utilizează puteri ale lui zece, sistemul de numerotare binar funcționează pe puteri ale lui doi care dă o conversie binară la zecimal de la baza-2 la baza-10.
Sistemele logice digitale și informatice utilizează doar două valori sau stări pentru a reprezenta o condiție, un nivel logic "1" sau un nivel logic "0", iar fiecare "0" și "1" este considerată a fi o singură cifră în baza 2 sau "sistem binar de numerotare".
În sistemul de numerotare binară, un număr binar, cum ar fi 101100101, este exprimat cu un șir de "1" și "0", fiecare cifră de-a lungul șirului de la dreapta la stânga având o valoare dublă față de cea precedentă. Dar, deoarece este o cifră binară, ea poate avea numai valoarea "1" sau "0", prin urmare, q este egal cu "2" (0 sau 1), poziția indicând ponderea sa în șir.
Deoarece numărul zecimal este un număr ponderat, conversia de la zecimale la binare (baza 10 la baza 2) va produce, de asemenea, un număr binar ponderat, cel mai mic bit drept fiind bitul cel mai puțin semnificativ sau LSB, iar cel mai mare din partea stângă fiind cel mai semnificativ bit sau MSB și putem reprezenta acest lucru ca:
Reprezentarea unui număr binar
Am văzut mai sus că, în sistemul de numere zecimale, greutatea fiecărei cifre spre stânga crește cu un factor de 10. În sistemul de numere binare, greutatea fiecărei cifre crește cu un factor de 2, așa cum se arată. Atunci, prima cifră are o pondere de 1 (2o), a doua cifră are o pondere de 2 (21), a treia o pondere de 4 (22), a patra o pondere de 8 (23) ș.a.m.d.
De exemplu, conversia unui număr binar la un număr zecimal ar fi:
Prin adăugarea tuturor valorilor numerice zecimale de la dreapta la stânga la pozițiile reprezentate de un "1" ne dă: (256) + (64) + (32) + (4) + (1) = 35710 sau trei sute cincizeci și șapte ca număr zecimal.
Deci, putem converti binar în zecimal prin găsirea echivalentului zecimal al șirului binar de cifre 1011001012 și extinderea cifrelor binare într-o serie cu o bază 2 dând un echivalent de 35710 în zecimal sau denary.
Metoda împărțirii repetate prin 2
Am văzut mai sus cum se convertesc numerele binare în zecimale, dar cum convertim un număr zecimal într-un număr binar? O metodă ușoară de convertire a echivalentului zecimal la număr binar este de a scrie numărul zecimal și de a-l împărți continuu cu 2 (doi) pentru a da un rezultat și un rest fie de "1", fie de "0" până la rezultatul final este zero.
De exemplu: Transformați numărul zecimal 29410 în echivalentul său numeric binar.
Această tehnică de conversie zecimal-binară prin divizare cu 2 dă numărului zecimal 29410 un echivalent în binar 1001001102, citit de la dreapta la stânga. Această metodă de divizare-prin-2 va funcționa și pentru conversia la alte baze de numere.
Vedem că principalele caracteristici ale unui sistem de numerotare binar este că fiecare "cifră binară" sau "bit" are o valoare de "1" sau "0", fiecare bit având o pondere sau o valoare dublă celei a bitului anterior începând de la cel mai mic sau cel mai puțin semnificativ (LSB) și se numește metoda "sum-of-weights".
Așadar, putem converti un număr zecimal într-un număr binar, fie folosind metoda suma-de ponderi, fie folosind metoda divizării repetate prin 2 ori și convertim binar în zecimal prin găsirea sumei de ponderi.
Nume și prefixe pentru numere binare
Numerele binare pot fi adunate împreună și scăzute la fel ca numerele zecimale, rezultatul fiind combinat într-unul din mai multe game de dimensiuni, în funcție de numărul de biți utilizați. Numerele binare vin în trei forme de bază - bit, byte (octet) și word (cuvânt), în care un bit este o singură cifră binară, un octet este de opt cifre binare, iar un cuvânt este de 16 cifre binare.
Clasificarea biților individuali în grupuri mai mari este în general menționată prin următoarele nume mai comune:
De asemenea, atunci când convertim de la Binar la Zecimal sau chiar de la Zecimal la Binar, trebuie să fim atenți să nu amestecăm cele două seturi de numere. De exemplu, dacă scriem cifrele 10 pe pagină, ar putea însemna numărul "zece" dacă presupunem că este un număr zecimal, sau ar putea fi în egală măsură un "1" și un "0" împreună în binar, care este egal cu numărul doi în formatul zecimal ponderat de mai sus.
O modalitate de a depăși această problemă atunci când convertiți numerele binare la cifre zecimale și pentru a identifica dacă cifrele sau numerele folosite sunt zecimale sau binare este să scrieți un număr mic numit indice "subscript" după ultima cifră, pentru a arăta baza sistemului numeric folosit.
De exemplu, dacă folosim un șir de numere binare, adăugăm indicele "2" pentru a desemna un număr de bază-2, astfel că numărul va fi scris ca 102. De asemenea, dacă era un număr zecimal standard, am adăuga indicele "10" pentru a desemna un număr de bază-10, astfel încât numărul să fie scris ca 1010.
Astăzi, deoarece sistemele cu microcontroler sau microprocesor devin din ce în ce mai mari, cifrele individuale binare (biți) sunt acum grupate câte 8 pentru a forma un singur BYTE, cu majoritatea hardware-ului calculatorului, cum ar fi hard disk-urile și modulele de memorie indicând de obicei dimensiunea lor în Megabytes sau chiar Gigabytes.
Rezumat Conversia binar-zecimală
Un "BIT" este termenul abreviat derivat din BInary digiT - cifra binară
Un sistem binar are numai două stări, Logic "0" și Logic "1" dând o bază de 2
Un sistem zecimal utilizează 10 cifre diferite, între 0 și 9, oferind o bază de 10
Un număr binar este un număr ponderat a cărui valoare ponderată crește de la dreapta la stânga
Ponderea unei cifre binare se dublează de la dreapta la stânga
Un număr zecimal poate fi convertit în număr binar prin utilizarea metodei sum-of-weight sau a metodei repetate de divizare cu 2
Când convertim numerele de la binar la zecimal sau zecimal la binar, se folosesc indici pentru a evita erorile
Conversia numerelor binare la zecimale (baza-2 la baza-10) sau zecimale la binare (baza 10 la baza-2) se poate face într-un număr de moduri diferite, după cum se arată mai sus. Atunci când convertiți numere zecimale la numere binare, este important să vă amintiți care este bitul cel mai puțin semnificativ (LSB) și care este cel mai semnificativ bit (MSB).
În următorul tutorial despre Logica binară vom examina convertirea numerelor binare în numere hexazecimale și viceversa și vom arăta că numerele binare pot fi reprezentate atât prin litere, cât și prin numere.