Računala ne razumiju riječi ili brojeve onako kako ljudi rade. Suvremeni softver omogućuje krajnjem korisniku da to ignorira, ali na najnižim razinama vašeg računala, sve je predstavljeno binarnim električnim signalom koji se registrira u jednoj od dvije države: uključivanje ili isključivanje. Da bi se dobio smisao za komplicirane podatke, vaše računalo mora ga kodirati u binarnom.
Binarni je osnovni 2-znamenkasti sustav. Baza 2 znači da postoje samo dvije znamenke - 1 i 0 - koje odgovaraju onom i isključenom stanju koje vaše računalo može razumjeti. Vjerojatno ste upoznati s osnovnim 10-decimalnim sustavom. Desetkom se koristi deset znamenaka koje se kreću od 0 do 9, a zatim se okreće oko oblika dvoznamenkastih brojeva, a svaka znamenka vrijedi deset puta više od posljednjeg (1, 10, 100, itd.). Binarni je sličan, a svaka znamenka vrijedi dva puta više od posljednjeg.
U binarnom, prva znamenka vrijedi 1 u decimalu. Druga znamenka vrijedi 2, treća vrijedi 4, četvrta vrijedi 8, a time i dvostruko svaki put. Dodavanje svih tih podataka daje vam broj u decimalnom obliku. Tako,
1111 (u binarnom) = 8 + 4 + 2 + 1 = 15 (u decimalnom)
Računovodstvo za 0, to nam daje 16 mogućih vrijednosti za četiri binarna bita. Pomaknite se na 8 bita, a imate 256 mogućih vrijednosti. To zauzima puno više prostora za predstavljanje, budući da četiri znamenke u decimalu daju 10.000 mogućih vrijednosti. Čini se da prolazimo kroz sve te nevolje reinventiranja našeg sustava prebrojavanja kako bismo ga učinili klinkerijima, ali računala znaju binarno mnogo bolje nego što razumiju decimalu. Svakako, binarni podaci zauzimaju više prostora, ali hardver nas zadržava. A za neke stvari, kao što je obrada logike, binarni je bolji od decimalnog.
Postoji još jedan osnovni sustav koji se također koristi za programiranje: heksadecimalni. Iako računala ne rade na heksadecimalnom, programeri ga koriste za prikaz binarnih adresa u obliku čitljivog oblika kod pisanja koda. To je zato što dvije znamenke heksadecimalnog mogu predstavljati cijeli bajt, osam znamenaka u binarnom. Hexadecimalni koristi 0-9 kao decimalni, a slova A do F predstavljaju dodatnih šest znamenki.
Kratak odgovor: hardver i zakoni fizike. Svaki broj vašeg računala je električni signal, a u prvim danima računanja električni su signali mnogo teže mjeriti i kontrolirati vrlo precizno. Bilo je više smisla samo razlikovati jedno od onih koji su zastupljeni od strane negativnih optužbi - i jedan od njih, koji je država zastupljena pozitivnim nabojem. Za one koji nisu sigurni zašto se, bez obzira na to, predstavlja pozitivan naboj, to je zato što elektroni imaju negativni naboj - više elektrona znači više struje s negativnim nabojem.
Dakle, ranija računala veličine prostorije koristila su binarnu za izgradnju svojih sustava, i iako su koristili mnogo stariji, bulkier hardver, zadržali smo iste temeljne principe. Moderna računala koriste ono što je poznato kao tranzistor za izvođenje izračuna s binarnim. Evo dijagrama onoga što izgleda tranzistor s terenskim efektom (FET):
U suštini, dopušta samo struji da struji iz izvora u odvod, ako postoji struja u vratima. To čini binarni prekidač. Proizvođači mogu izgraditi te tranzistore nevjerojatno male - sve do 5 nanometara, ili oko veličine dva dijela DNA. To je način na koji moderni procesori rade, pa čak i oni mogu patiti od problema koji razlikuju između on i off stanja (iako to je uglavnom zbog njihove nestvarnu molekularnu veličinu, podložno čudnovatosti kvantne mehanike).
Znači, možda mislite, zašto samo 0 i 1? Zar ne možete dodati još jednu znamenku ?, Dok se neki od njih spuštaju prema tradiciji u načinu izgradnje računala, dodavanje još jedne znamenke znači da bismo trebali razlikovati različite razine trenutne - ne samo, , Äúon,, ali isto tako kaže kao, malo ... i, jako puno.
Problem je ukoliko ste željeli koristiti više razina napona, potreban vam je način da lako izvršite izračune s njima, a hardver za to nije izvediv kao zamjena za binarnu obradu. Doista postoji; to se zove troznarno računalo, i to je bio oko od 1950-ih, ali to je ljepušan velik dio gdje razvoj na tome zaustavljen. Ternarna logika je način učinkovitiji od binarnog, ali još uvijek nitko nema učinkovitu zamjenu za binarnu tranzistor, ili barem nije bilo posla na njihovu razvoju na istoj maloj vagi kao binarni.
Razlog zašto ne možemo upotrijebiti ternarnu logiku svodi se na način na koji se tranzistori slažu na računalu - nešto što se zove,-i kako se koriste za izvođenje matematike. Gates preuzima dva ulaza, izvršava operaciju na njima i vraća jedan izlaz.
To nas dovodi do dugog odgovora: binarnu matematiku je lakše za računalo nego bilo što drugo. Booleovske logike lako se dijele na binarne sustave, s istinskim i lažnim predstavljanjem i isključivanjem. Vrata u vašem računalu rade na logičkoj logici: zauzimaju dva ulaza i izvršavaju operaciju na njima kao što su AND, OR, XOR i tako dalje. Dva ulaza lako se upravljaju. Ako biste prikazivali odgovore za svaki mogući unos, imat ćete ono što je poznato kao tablica istine:
Binarna tablica istine koja djeluje na logičkoj logici imat će četiri moguća izlaza za svaku osnovnu operaciju. No, budući da ternarna vrata imaju tri ulaza, ternarna tablica istine imala bi 9 ili više. Dok binarni sustav ima 16 mogućih operatora (2 ^ 2 ^ 2), ternarni sustav bi imao 19 683 (3 ^ 3 ^ 3). Skaliranje postaje problem jer, dok je ternar učinkovitiji, također je eksponencijalno složeniji.
Tko zna? U budućnosti, možemo početi vidjeti ternarna računala postaju stvar, jer gurnemo granice binarnog na molekularnu razinu. Za sada, ipak, svijet će nastaviti raditi na binarnom.
Slikovni krediti: spainter_vfx / Shutterstock, Wikipedia, Wikipedia, Wikipedia, Wikipedia