Mis on binaarne ja miks arvutid seda kasutavad?

Sisukord:

Mis on binaarne ja miks arvutid seda kasutavad?
Mis on binaarne ja miks arvutid seda kasutavad?

Video: Mis on binaarne ja miks arvutid seda kasutavad?

Video: Mis on binaarne ja miks arvutid seda kasutavad?
Video: CS50 2014 - Week 5, continued - YouTube 2024, Aprill
Anonim
Arvutid ei saa aru sõnadest ja numbritest, kuidas inimesed seda teevad. Tänapäevane tarkvara võimaldab lõppkasutajal seda ignoreerida, kuid arvuti madalaimal tasemel kujutab kõik endast kahesuunalist elektrilist signaali, mis registreerub ühes kahest olekus: sisse või välja. Komplitseeritud andmete mõistmiseks peab teie arvuti kodeerima selle kahendkataloogis.
Arvutid ei saa aru sõnadest ja numbritest, kuidas inimesed seda teevad. Tänapäevane tarkvara võimaldab lõppkasutajal seda ignoreerida, kuid arvuti madalaimal tasemel kujutab kõik endast kahesuunalist elektrilist signaali, mis registreerub ühes kahest olekus: sisse või välja. Komplitseeritud andmete mõistmiseks peab teie arvuti kodeerima selle kahendkataloogis.

Binaar on aluse 2 numbrisüsteem. Base 2 tähendab, et on ainult kaks numbrit-1 ja 0 -st, mis vastavad teie arvuti arusaadavuse olekutele. Sa oled ilmselt tuttav kümnendsüsteemist 10-ga. Kümnendarvuses kasutatakse kümmet numbrit, mis jäävad vahemikku 0 kuni 9, ning seejärel märab kahekohalised numbrid, kusjuures iga arv on kümme korda rohkem kui viimane (1, 10, 100 jne). Binaar on sarnane, kusjuures iga numbri väärtus on kaks korda suurem kui viimane.

Loendamine binaarfailides

Binaarfailis on esimene number väärtusega 1 kümnendkohani. Teine number on väärt 2, kolmas väärtus 4, neljas väärtus 8 ja nii edasi-kahekordistamine iga kord. Nende kõigi lisamine annab numbri kümnendkohani. Niisiis
Binaarfailis on esimene number väärtusega 1 kümnendkohani. Teine number on väärt 2, kolmas väärtus 4, neljas väärtus 8 ja nii edasi-kahekordistamine iga kord. Nende kõigi lisamine annab numbri kümnendkohani. Niisiis

1111 (in binary) = 8 + 4 + 2 + 1 = 15 (in decimal)

Raamatupidamine on 0, annab see 16 võimaliku väärtuse neli binaarset bitti. Liiguta 8 bitti ja sul on 256 võimalikku väärtust. See võtab palju rohkem ruumi esindamiseks, kuna neljakohalised kümnendkohad annavad meile 10 000 võimalikku väärtust. Võib tunduda, et me läbime kõik need probleemid, mis leiutasid meie loendussüsteemi uuesti selleks, et muuta see klunkeriks, kuid arvutid mõistavad binaarfunktsiooni palju paremini, kui nad kümnendkohta mõistavad. Muidugi võtab binaar rohkem ruumi, kuid riistvara jätab meid tagasi. Ja mõnel juhul, nagu loogika töötlemine, on binaar parem kui kümnendkoht.

Seal on veel üks baasüsteem, mida kasutatakse ka programmitöös: kuueteistkümnend. Kuigi arvutid ei käivitu kuueteistkümnendsüsteemis, programmeerijad kasutavad seda koodi kirjutamisel binaar aadresside kujul inimloetaval kujul. See tuleneb sellest, et kuueteistkümnenda numbri kaks numbrit võivad kujutada tervet baiti, kaheksat numbrit binaarfailides. Kuueteistkümnendsüsteemis kasutatakse kümnendarvuna 0-9 ja ka tähed A kuni F, mis tähistavad veel kuut numbrit.

Miks arvutid kasutavad binaarseid?

Lühike vastus: riistvara ja füüsika seadused. Iga arv teie arvutis on elektriline signaal ning arvutamise algusjärgus oli elektrisignaalide mõõtmine ja kontrollimine väga täpselt väga keeruline. Mõistlikum oli ainult eristada "positiivse laengu" poolt esindatud negatiivse tasu seisundit ja "välja" olekut. Neile, kes pole kindlad, miks "välja" on positiivne laeng, on see, et elektronidel on negatiivne laeng - rohkem elektronit tähendab rohkem voolu negatiivse laenguga.

Niisiis kasutasid väikesed ruumi suurusega arvutid oma süsteemide ehitamiseks kahendkoodi, ja kuigi nad kasutasid palju vanemat, suuremahulist riistvara, oleme pidanud samu aluspõhimõtteid. Kaasaegsed arvutid kasutavad binaararvutustega arvutamiseks tuntud transistorit. Siin on diagramm, mis näeb välja välise efekti transistori (FET):

Põhimõtteliselt võimaldab see ainult voolu allikast voolata, kui väravas on vool. See moodustab kahekomponentse lüliti. Tootjad saavad ehitada need transistorid uskumatult väikesteks - kuni viis nanomeetrit või kahe DNA ahela suurust. Nii toimivad tänapäevased protsessorid ja isegi neil võib tekkida probleeme, mis eristavad olekute ja välja lülitamise olekute vahel (kuigi see on peamiselt tingitud nende ebareaalsest molekulaarse suurusest, mis on tingitud kvantmehaanika imelikkusest).
Põhimõtteliselt võimaldab see ainult voolu allikast voolata, kui väravas on vool. See moodustab kahekomponentse lüliti. Tootjad saavad ehitada need transistorid uskumatult väikesteks - kuni viis nanomeetrit või kahe DNA ahela suurust. Nii toimivad tänapäevased protsessorid ja isegi neil võib tekkida probleeme, mis eristavad olekute ja välja lülitamise olekute vahel (kuigi see on peamiselt tingitud nende ebareaalsest molekulaarse suurusest, mis on tingitud kvantmehaanika imelikkusest).

Aga miks ainult Base 2?

Nii et võite mõelda: "Miks ainult 0 ja 1? Kas te ei saaks lihtsalt lisada veel ühte numbrit? "Kuigi mõned neist on seotud arvutite ehitamise traditsioonidega, tähendab teise numbri lisamine seda, et me peame eristama praegust erinevat taset - mitte ainult" välja "ja", "Vaid ka väidetavalt" natuke "ja" palju ".

Siin on probleem, kui sooviksite kasutada mitut pinget, siis on teil vaja nende arvutustega hõlpsasti sooritada ja riistvara ei ole binaararvutusega asendamise jaoks elujõuline. See on tõepoolest olemas; seda nimetatakse kolmekordseks arvutiks ja see on olnud juba 1950ndatest aastatest, kuid see on päris palju, kus selle areng lõpetati. Ternary loogika on palju tõhusam kui binaarne, kuid praeguseks ei ole keegi kellelgi binaarse transistori jaoks efektiivset asendust või vähemalt ei ole tehtud nende arendamist samades pisikeste skaalates nagu binaarne.

Põhjus, miks me ei saa kasutada kolmekordse loogika, seisneb selles, kuidas transistorid arvutiga laotud, mida nimetatakse "väravateks" -ja kuidas neid kasutatakse matemaatika läbiviimiseks. Väravad võtavad kaks sisendit, teostavad nendega toiminguid ja tagastavad ühe väljundi.

See toob meid pika vastuseni: binaarne matemaatika on arvuti jaoks nii lihtsam kui mis tahes muu. Boolean loogika kaart hõlpsalt binaarsüsteemid, True ja False esindavad sisse ja välja. Arvuti väravad töötavad boolean loogikaga: nad kasutavad kahte sisendit ja teevad nendega toiminguid nagu AND, VÕI, XOR ja nii edasi. Kaks sisendit on hõlpsasti hallatavad.Kui peaksite graafiliselt vastama iga võimaliku sisendi jaoks, oleks teil teada, mida nimetatakse tõetabeliks:
See toob meid pika vastuseni: binaarne matemaatika on arvuti jaoks nii lihtsam kui mis tahes muu. Boolean loogika kaart hõlpsalt binaarsüsteemid, True ja False esindavad sisse ja välja. Arvuti väravad töötavad boolean loogikaga: nad kasutavad kahte sisendit ja teevad nendega toiminguid nagu AND, VÕI, XOR ja nii edasi. Kaks sisendit on hõlpsasti hallatavad.Kui peaksite graafiliselt vastama iga võimaliku sisendi jaoks, oleks teil teada, mida nimetatakse tõetabeliks:
Binaarsel loogikal toimuv binaarne tõetabel näitab nelja võimaliku väljundi iga põhitoimingu jaoks. Kuid kuna kolmepoolsed väravad võtavad kolm sisendit, on kolmekordne tõetabel tabelis 9 või rohkem. Kuigi binaarsüsteemil on 16 võimalikku operaatorit (2 ^ 2 ^ 2), on kolmekordne süsteem 19 683 (3 ^ 3 ^ 3). Suurendus muutub probleemiks, sest kui kolmekomponent on tõhusam, on see ka eksponentsiaalselt keerukam.
Binaarsel loogikal toimuv binaarne tõetabel näitab nelja võimaliku väljundi iga põhitoimingu jaoks. Kuid kuna kolmepoolsed väravad võtavad kolm sisendit, on kolmekordne tõetabel tabelis 9 või rohkem. Kuigi binaarsüsteemil on 16 võimalikku operaatorit (2 ^ 2 ^ 2), on kolmekordne süsteem 19 683 (3 ^ 3 ^ 3). Suurendus muutub probleemiks, sest kui kolmekomponent on tõhusam, on see ka eksponentsiaalselt keerukam.

Kes teab? Tulevikus võiksime hakata nägema, et kolmekomponentne arvuti muutub asi, sest me tõukeme binaar piirid molekulaarsel tasandil. Seni aga maailm jätkab binaarfunktsiooni käivitamist.

Image credits: spainter_vfx / Shutterstock, Wikipedia, Wikipedia, Wikipedia, Wikipedia

Soovitan: