Sunteți pe pagina 1din 8

Sistem binar

De la Wikipedia, enciclopedia liber Sistem de numeraie Sistem Baz Binar 2 Ternar 3 Cuaternar 4 Octal 8 Zecimal 10 Duodecimal 12 Hexazecimal 16 Vigesimal 20 Sexazecimal 60 Un sistem binar este, n general vorbind, un sistem bazat pe 2 elemente, posibiliti, aspecte, pri, etape .a. Acest articol descrie numai sistemul de numeraie binar, care folosete drept baz numrul 2. Pentru alte sisteme de numeraie vezi i articolele Sistem de numeraie i Sistem de numeraie poziional. Pentru toate genurile de sisteme (care pot fi de numeraie sau nu, binare sau nu) vezi Sistem (dezambiguizare).

Descriere general
n sistemul (de numeraie) binar exist doar dou cifre posibile, 0 i 1. Conform definiiei lui Claude Shannon, o cifr binar conine cantitatea de informaie de 1 bit. Sistemul binar este n acelai timp i cel mai natural mod de stocare a informaiei n domeniul calculatoarelor, deoarece acolo 1 bit (celula de memorie cu capacitate minim) gzduiete unitatea elementar de informaie: valoarea bitului poate fi ori un 0, ori un 1. n orice sistem informatic, conform definiiei lui Turing, este nevoie de o memorie fiabil (sigur n funcionare). Cea mai fiabil metod de prelucrare i respectiv de stocare a datelor de calculator se bazeaz pe sistemul binar: "celula este magnetizat sau nu este magnetizat", "trece curent sau nu trece curent", "cartela este perforat sau nu este perforat" etc. Cea mai apropiat alternativ ar fi fost utilizarea numeraiei n baza 3 (sistemul ternar), ceea ce ar fi necesitat componente electronice cu trei stri stabile, ducnd la o logic trivalent de genul "senzorul nu este excitat, senzorul este puin excitat, senzorul este excitat", ceea ce, dei induce un nivel mai bun de discernere a informaiei, reduce, cel puin n principiu, fiabilitatea potenial a sistemului. Datorit uurinei implementrii sistemului binar n circuitele electronice, el se folosete practic la toate calculatoarele moderne.

Istorie
Sistemul de numeraie binar a nceput s fie folosit n mod implicit nc din cele mai vechi timpuri, odat cu apariia logicii bivalente: odat definite noiunile de "propoziie adevrat" i "propoziie fals", operaiile care lucreeaz cu aceste noiuni sunt operaii de tip binar. Folosirea sistemului binar s-a rspndit ns cel mai mult abia recent, odat cu apariia sistemelor informatice, ncepnd de la cele mai rudimentare i pn la cele curente. Prima descriere cunoscut a unui sistem de numeraie binar a fost scris cndva ntre sec. VIII i IV .Hr. de ctre matematicianul indian Pingala. Vezi online. n China antic s-au folosit seturi complete de 8 trigrame i 64 hexagrame, corespunznd cu numere cu cte 3 respectiv 6 cifre binare. i n Africa se cunosc diverse combinaii binare antice. n anul 1605 Francis Bacon i-a imaginat un sistem de codificare a literelor alfabetului prin cte o secven de cifre binare. El i-a dat seama c, pentru codificare, se pot folosi nu numai cifrele binare, dar i orice alte obiecte cu 2 stri, ca de exemplu clopote (bat sau nu bat), lumini, tore .a. Tot n sec. XVII matematicianul german Gottfried Leibniz a descris n articolul su Explication de l'Arithmtique Binaire sistemul binar n ntregime, folosindu-se chiar de simbolurile moderne 0 i 1. n anul 1854 matematicianul i filozoful englez George Boole a publicat o lucrare fundamental care prezint un sistem logic denumit mai trziu algebra Boolean. Acest sistem s-a dovedit esenial pentru dezvoltarea sistemului binar i implementarea sa n circuitele electronice de mai trziu. n 1937, Claude Shannon, un inginer i matematician american, a pus bazele teoriei informaiei precum i cele ale proiectrii circuitelor electronice digitale.

Reprezentarea numerelor n sistemul binar


n texte care conin numere n mai multe sisteme de numeraie, pentru a evita ambiguitile, dup numrul n cauz se adaug ca subindice i baza sistemului de numeraie n paranteze. De exemplu numrul zecimal (obinuit) 100 se noteaz 100(10) (n baza zece), spre a-l deosebi de 100(2) (n baza doi), care are valoarea unui 4 obinuit (n baza zece). Numerele binare sunt alctuite din secvene de cifre binare ("bii"), care la rndul lor reprezint orice entiti care au numai 2 stri stabile diferite. De exemplu, numrul zecimal 667(10) poate fi reprezentat n binar prin urmtoarele iruri binare:

- cifre binare; afirmaie adevrat (1) sau fals (0): 1 0 1 0 0 1 1 0 1 1 - polarizarea unor magnei, vertical sau orizontal: | - | - - | | - | | - tensiune electric prezent sau absent: papaappapp - da sau nu: NDNDDNNDNN

Nu este ns necesar ca cifra binar 1 s fie interpretat ntotdeauna drept tensiune prezent iar 0 drept tensiune absent; la fel de bine poate funciona i convenia contrar. Ultimul rnd din tabela de mai sus este un exemplu n acest sens, unde D-urile echivaleaz cu 0, iar N-urile cu 1. Cea mai obinuit reprezentare numeric a cifrelor binare este cea care corespunde cu sistemul cifrelor zecimale, n aa fel nct: "0"(2) corespunde lui 0(10), i "1"(2) corespunde lui 1(10). Cnd se citesc numerele binare, cifrele lor se rostesc una cte una. Ca exemplu, numrul 100(2), care are valoarea zecimal 4, nu se citete "o sut", ci "unu-zero-zero" sau "unuzero-zero n baza 2". Valoarea numrului binar 1010011011(2) de mai sus se calculeaz n zecimal n felul urmtor (de la dreapta spre stnga): 20 + 21 + 23 + 24 + 27 + 29 = 1 + 2 + 8 + 16 + 128 + 512 = 667(10). Pe lng numerele pozitive i numerele negative pot fi reprezentate n binar. Aceasta se face prin adugarea unei poziii suplimentare la extrema stng (cea mai semnificativ) a numrului binar. De asemenea i numerele reale fracionare (cu zecimale) pot fi reprezentate n sistemul binar, i anume folosind o virgul ntre partea ntreag i cea fracionar.

Numrarea n sistemul binar


Binar Zecimal 0 1 10 11 100 101 110 0 1 2 3 4 5 6

111 1000 1001 1010

7 8 9 10

Numrarea n sistemul binar este n bun msur asemntoare cu cea din sistemul zecimal obinuit. Diferena const n faptul c n binar stau la dispoziie doar dou cifre anume 0 i 1, n timp ce n sistemul zecimal exist zece cifre, cele de la 0 la 9. Regulile pentru toate sistemele, deci i pentru cel binar, sunt urmtoarele dou:

Numrarea ncepe cu o singur poziie, care pornete ca valoare (sau coninut) de la cifra 0 i continu cresctor pn la cea mai mare cifr din sistem. Aceast poziie, cea mai din dreapta a numrului, poart numele de "poziia (cifra) cea mai puin semnificativ". Dup ce o poziie curent ajunge la cifra maxim, poziia curent "sare" napoi la 0, iar poziia din stnga ei trebuie incrementat cu o unitate. Aceast situaie se numete "depire". (Dac cumva poziia din stnga nc nu exist, ea se creeaz i i se d mai nti valoarea 1.) Prin acest procedeu este posibil ca i poziia din stnga s prezinte o depire. n acest caz se aplic chiar aceast regul din nou, altfel spus, n mod recursiv, din ce n ce mai spre stnga, pn se ntlnete un 0, care, fr depire, devine un 1.

Pentru numrarea n binar aceasta nseamn c, dup ce o poziie a devenit 1, ea se repune la 0, iar la poziia din stnga ei trebuie adugat un 1. Rezultatul arat astfel: 0, 1, 10, 11, 100, 101, 110, 111, 1000 .a.m.d.

Aritmetica numerelor binare


Cu numerele binare se pot efectua n principiu toate operaiunile aritmetice i algebrice, de exemplu comparaia (punerea n relaie de ordine prin <, = i >), ridicarea la putere, extragerea de radicali, funcii trigonometrice, logaritmice .a.m.d. Mai uzuale sunt ns operaiile aritmetice binare elementare (adunarea, scderea, nmulirea i mprirea), care se aseamn n bun msur cu cele obinuite, zecimale:

Adunarea n binar
Tabla adunrii a dou cifre binare este urmtoarea:
0+0=0 0+1=1

1+0=1 1 + 1 = 10 (cu "depire")

Ultimul rnd de mai sus se citete: "Unu plus unu este egal cu unu-zero (n baza 2)", valoarea lui 10(2) fiind desigur 2(10). Pe baza tablei de mai sus se pot aduna oricare 2 numere binare A i B. Exemplu (se ncepe de la dreapta):
1 1 1 - 1 <== transporturi, rezultate din depirea de pe poziia anterioar) A 1 1 0 1 <== valoarea lui A este 13(10) (1 + 4 + 8) +B 1 0 1 0 1 <== valoarea lui B este 21(10) (1 + 4 + 16) ---------------=S 1 0 0 0 1 0 <== valoarea sumei este 34(10) (2 + 32).

Scderea n binar
Scderea n sistemul binar funcioneaz foarte asemntor cu adunarea binar. Tabla scderii este:
0-0=0 0 - 1 = 1 (cu "mprumut") 1-0=1 1-1=0

Pe aceast baz se pot scdea numere binare formate din mai multe 0-uri i 1-uri. Operaia se execut poziie cu poziie, de la dreapta la stnga. La nevoie se folosete "mprumutul" de la poziia de mai la stnga. De exemplu:
** * <== coloanele marcate cu stelue se folosesc pentru mprumut A 1 1 0 0 1 0 1 <== A are valoarea zecimal 1 + 4 + 32 + 64 = 101(10) B 1 1 0 1 1 <== B are valoarea zecimal 1 + 2 + 8 + 16 = 27(10) -----------------=D 1 0 0 1 0 1 0 <== diferena lor este D = 2 + 8 + 64 = 74(10)

Scderea unui numr binar produce acelai rezultat cu adugarea aceluia numr dar cu semn schimbat. La calculatoare, pentru a schimba semnul unui numr, se folosete complementul fa de 2, o operaie binar logic elementar. Aceasta elimin necesitatea de a mai realiza, pe lng circuitele de adunare, i pe cele de scdere. Altfel spus, scderea se realizeaz prin urmtoarele dou adunri:
A - B = A + not B + 1

nmulirea n binar
nmulirea (multiplicarea) n binar se bazeaz, la fel ca i n sistemul zecimal, pe adunare. Tabla nmulirii binare este simpl:
0x0=0

0x1=0 1x0=0 1x1=1

Pentru a multiplica numerele binare A i B se fac nti produsele pariale ale lui A cu fiecare cifr binar a lui B, luate de la dreapta la stnga, i apoi se adun rezultatele pariale ntre ele. Produsele pariale ale fiecrei cifre din B cu A sunt i ele simple:

Dac cifra din B este un 0, atunci i produsul parial este 0, i nu are efect asupra adunrii; Dac cifra din B este un 1, atunci produsul parial al lui A cu 1 este chiar A.

Exemplu 1010(2) x 11011(2):


1 1 0 1 1 <== A este egal cu 1 + 2 + 8 + 16 = 27(10) 1 0 1 0 <== B este egal cu 2 + 8 = 10(10) --------00000 +11011 +00000 +11011 ----------------1 0 0 0 0 1 1 1 0 <== Produsul A x B = 2 + 4 + 8 + 256 = 270(10) **** <== depire (la adunare)

mprirea n binar
i mprirea binar se aseamn n bun parte cu cea obinuit, zecimal. Cnd numrul A trebuie mprit la numrul B, A se mai numete "demprit", iar B "mpritor". n general se deosebesc 2 feluri de mpriri:

cea exact, la care intereseaz i se calculeaz i cifrele de dup virgul, i cea cu rest, cnd mpritorul B nu intr exact n dempritul A; calculele se opresc acolo unde ar urma virgula, dar din demprit rmne un rest, care trebuie specificat.

Exemplu de mprire binar cu rest: 1100111(2) / 101(2) (sau n zecimal, 103 / 5 = 20 rest 3). Se procedeaz de la stnga la dreapta:
1 1 0 0 1 1 1 / 1 0 1 = 1 0 1 0 0 (= 20(10)). Restul se afl pe penultima linie, i anume 0 1 1 (= 3(10)). -101 <== ncape i executm scderea; trecem un 1 la rezultat; = 0 0 1.0 <== "coborm" o cifr din demprit; -101 <== nu ncape; trecem un 0 la rezultat; 0 0 1.0.1 <== mai "coborm" nc o cifr; -101 <== ncercm s scdem nc o dat, cu o poziie mai la dreapta; = 0 0 0.1 <== acum ncape exact; trecem un 1 la rezultat, i "coborm" cifra urmtoare; - 1 0 1 <== nu ncape; trecem un 0 la rezultat; 0 0 0.1.1 <== mai "coborm" o cifr; acesta este restul, deoarece ... - 1 0 1 <== ... cnd ncercm nc o dat, nu ncape nici acum; trecem nc un 0 la rezultat; acuma ns nu mai exist nici cifre de cobort.

mprirea binar const ntr-un iri de scderi. De fiecare dat cnd mpritorul nu ncape n acelai numr de cifre ale dempritului (cu alte cuvinte este mai mic), se mai "coboar" urmtoarea cifr spre dreapta din demprit.

Operaii binare logice


Cu numerele binare se pot executa i operaii logice sau "booleene" (numite aa dup matematicianul i filozoful englez George Boole); acestea nu pun accentul pe valoarea aritmetic a numrului binar n cauz, ci pe manipularea numerelor i cifrelor binare conform legilor adevrului i falsului. Vezi articolele Logic binar i Algebr boolean.

Conversia din zecimal n binar


Mai nti se mparte numrul ales la 2; restul reprezint cifra cea mai puin semnificativ (cea mai din dreapta) a rezultatului conversiei. Ctul se remparte la 2, se noteaz restul, i procedura se repet cu noul ct (recursiv). Operaia se sfrete cnd ctul devine nul. Pentru examplificare: conversia numrului 118(10) n binar: Operaie=Ct Rest 118 2 = 59 0 59 2 = 29 1 29 2 = 14 1 14 2 = 7 0 72=3 1 32=1 1 12=0 1 Citind resturile de jos n sus, rezultatul final al conversiei este numrul binar 1110110(2). Aceast metod se poate aplica i la conversiunea n alte baze.

Conversia din binar n zecimal


Ca exemplu folosim din nou numrul 1110110(2), pe care l convertim napoi n baza 10. Se adun puterile lui 2, nmulite cu cifra binar respectiv. Puterile la care trebuie ridicat 2 ncep cu n-1, unde n este numrul de cifre binare, i devin din ce n ce mai mici, de la stnga la dreapta:
Binar: Zecimal: 1 1 1 0 1 1 0

261 + 251 + 241 + 230 + 221 + 211 + 200 = 118

Pentru eficiena conversiei, calculul practic se face cu o schem Horner:

Zecimal: (((((1 2 + 1)2 + 1)2 + 0)2 + 1)2 + 1)2 + 0 = 118

Operatorii binari
Operatorii binari sunt caractere speciale cu care se noteaz operaii binare, de exemplu cele din cadrul unui algoritm sau program. Notarea lor nu este standardizat. Sunt de mai multe feluri:

aritmetici: +; -; *; / raionali: <= sau ; >= sau ; == sau =; != sau logici: && (i); || (sau)

S-ar putea să vă placă și