Pagina principala » HOWTO » Ce este binar și de ce folosesc calculatoarele?

    Ce este binar și de ce folosesc calculatoarele?

    Computerele nu înțeleg cuvinte sau cifre așa cum fac oamenii. Software-ul modern permite utilizatorului final să ignore acest lucru, dar la cele mai joase niveluri ale computerului, totul este reprezentat de un semnal electric binar care se înregistrează într-una din cele două stări: pornit sau oprit. Pentru a înțelege date complexe, calculatorul trebuie să îl codifice în binar.

    Binary este un sistem de numere de bază 2. Baza 2 înseamnă că există doar două cifre - 1 și 0 - care corespund stărilor de pornire și oprire pe care computerul le poate înțelege. Probabil sunteți familiarizați cu baza 10 - sistemul zecimal. Zecimal utilizează zece cifre care variază de la 0 la 9 și apoi se înfășoară pentru a forma numere din două cifre, fiecare cifră fiind de zece ori mai mare decât ultima (1, 10, 100 etc.). Binar este similar, fiecare cifră fiind în valoare de două ori mai mare decât ultima.

    Numărătoare în Binar

    În binar, prima cifră este în valoare de 1 în zecimal. Cea de-a doua cifră este în valoare de 2, a treia în valoare de 4, a patra în valoare de 8 și de a se dubla de fiecare dată. Adăugarea acestor informații vă oferă numărul în zecimal. Asa de,

    1111 (în binar) = 8 + 4 + 2 + 1 = 15 (în zecimal)

    Contabilitatea pentru 0, aceasta ne oferă 16 valori posibile pentru patru biți binari. Deplasați-vă la 8 biți și aveți 256 valori posibile. Aceasta necesită mult mai mult spațiu pentru a reprezenta, deoarece patru cifre în zecimal ne dau 10.000 de valori posibile. Se poate părea că trecem prin toate aceste probleme de a reinventa sistemul nostru de numărare doar pentru al face mai cluneri, dar computerele înțeleg binare mult mai bine decât înțeleg zecimale. Sigur, binarul ocupă mai mult spațiu, dar suntem reținute de hardware. Și pentru unele lucruri, cum ar fi procesarea logică, binar este mai bun decât zecimal.

    Există un alt sistem de bază care este de asemenea folosit în programare: hexazecimal. Deși computerele nu rulează în format hexazecimal, programatorii o folosesc pentru a reprezenta adrese binare într-un format citit de om la scrierea codului. Acest lucru se datorează faptului că două cifre de hexazecimal pot reprezenta un octet întreg, opt cifre în binar. Hexadecimal utilizează 0-9 ca decimal, iar literele A până la F reprezintă cele șase cifre suplimentare.

    Deci, de ce computerele utilizează binar?

    Răspunsul scurt: hardware și legile fizicii. Fiecare număr din computer este un semnal electric, iar în primele zile de calcul, semnalele electrice erau mult mai greu de măsurat și controlate foarte precis. S-a făcut mai multă sens să se facă distincția doar între o stare "pe" stare reprezentată de sarcină negativă - și o stare "oprit" - reprezentată de o taxă pozitivă. Pentru cei nesiguri de ce "off" este reprezentat de o sarcină pozitivă, este pentru că electronii au o sarcină negativă - mai mulți electroni înseamnă mai mult curent cu o încărcare negativă.

    Deci, computerele de dimensiuni reduse de dimensiuni reduse au folosit binar pentru a construi sistemele lor, și chiar dacă au folosit hardware mult mai vechi, mai mari, am păstrat aceleași principii fundamentale. Calculatoarele moderne utilizează ceea ce este cunoscut ca un tranzistor pentru a efectua calcule cu binare. Iată o diagramă a ceea ce arată un tranzistor cu efect de câmp (FET):

    În esență, acesta permite numai curentului să curgă de la sursă la scurgere dacă există un curent în poartă. Aceasta formează un comutator binar. Producătorii pot construi aceste tranzistoare incredibil de mici - până la 5 nanometri, sau aproximativ două dimensiuni ale ADN-ului. Acesta este modul în care funcționează CPU-urile moderne și chiar și aceștia pot suferi de probleme care diferențiază starea de pornire și de oprire (deși aceasta se datorează în principal dimensiunii lor moleculare ireale, fiind supusă ciudățeniei mecanicii cuantice).

    Dar de ce numai baza 2?

    Poate că te gândești, de ce doar 0 și 1? Nu puteți să adăugați o altă cifră? "În timp ce unele dintre ele se referă la tradiția în ceea ce privește modul în care sunt construite computerele, adăugarea unei alte cifre ar însemna că ar trebui să distingem între diferite niveluri de curent - nu doar" off "și" on , "Dar, de asemenea, state ca" pe un pic "și" pe o mulțime. "

    Problema aici este dacă ați dori să utilizați mai multe nivele de tensiune, ați avea nevoie de o modalitate de a efectua cu ușurință calcule cu ele, iar hardware-ul pentru care nu este viabil ca înlocuitor pentru calculul binar. Într-adevăr există; se numește un calculator ternar, și a fost în jur de la anii 1950, dar asta este destul de mult în cazul în care dezvoltarea pe ea sa oprit. Logica ternară este mult mai eficientă decât binar, dar, încă de la început, nimeni nu are o înlocuire eficientă a tranzistorului binar sau, cel puțin, nu sa făcut nici o lucrare cu privire la dezvoltarea acestora la aceleași scale ca cele binare.

    Motivul pentru care nu putem folosi logica ternară se limitează la modul în care tranzistorii sunt stivuite într-un calculator - ceva numit "porți"-și cum sunt folosite pentru a efectua matematica. Porțile primesc două intrări, efectuează o operație pe ele și returnează o ieșire.

    Acest lucru ne duce la răspunsul lung: matematica binară este mult mai ușor pentru un computer decât orice altceva. Logica logică booleană compune cu ușurință la sisteme binare, cu Adevărat și Fals fiind reprezentat de funcția de pornire și oprire. Portile din calculatorul dvs. funcționează logic boolean: ei iau două intrări și efectuează o operație pe ele ca AND, OR, XOR și așa mai departe. Două intrări sunt ușor de gestionat. Dacă ar trebui să scrieți răspunsurile pentru fiecare intrare posibilă, ați avea ceea ce este cunoscut ca o tabelă de adevăr:

    O masă binară a adevărului care funcționează pe logica booleană va avea patru ieșiri posibile pentru fiecare operație fundamentală. Dar pentru că porțile ternare au trei intrări, o masă de adevăr ternară ar avea 9 sau mai multe. În timp ce un sistem binar are 16 operatori posibili (2 ^ 2 ^ 2), un sistem ternar ar avea 19,683 (3 ^ 3 ^ 3). Scaling-ul devine o problemă deoarece, în timp ce ternarul este mai eficient, este și mai exponențial mai complex.

    Cine știe? În viitor, am putea începe să vedem computerele ternare să devină un lucru, pe măsură ce împingem limitele binare până la un nivel molecular. Pentru moment, totuși, lumea va continua să ruleze pe binar.

    Credite imagine: spainter_vfx / Shutterstock, Wikipedia, Wikipedia, Wikipedia, Wikipedia