Računalniki Windows Internet

Ime v binarni kodi. Binarna koda. velika cela števila in števila s predznakom

Binarna koda je oblika zapisovanja informacij v obliki enic in ničel. To je pozicijsko z osnovo 2. Danes se binarna koda (malo spodaj predstavljena tabela vsebuje nekaj primerov pisanja številk) uporablja v vseh digitalnih napravah brez izjeme. Njegova priljubljenost je razložena z visoko zanesljivostjo in preprostostjo te oblike snemanja. Binarna aritmetika je zelo preprosta, zato jo je enostavno implementirati na ravni strojne opreme. komponente (ali kot jih tudi imenujemo logične) so zelo zanesljive, saj delujejo le v dveh stanjih: logična ena (toka je) in logična ničla (ni toka). Tako se ugodno razlikujejo od analognih komponent, katerih delovanje temelji na prehodnih procesih.

Kako je sestavljen binarni zapis?

Ugotovimo, kako se oblikuje tak ključ. En bit binarne kode lahko vsebuje samo dve stanji: nič in ena (0 in 1). Pri uporabi dveh bitov je mogoče zapisati štiri vrednosti: 00, 01, 10, 11. Tribitni vnos vsebuje osem stanj: 000, 001 ... 110, 111. Posledično ugotovimo, da je dolžina binarna koda je odvisna od števila bitov. Ta izraz lahko zapišemo z naslednjo formulo: N =2m, kjer je: m število števk, N pa število kombinacij.

Vrste binarnih kod

V mikroprocesorjih se takšni ključi uporabljajo za zapis različnih obdelanih informacij. Širina binarne kode lahko znatno preseže njen vgrajeni pomnilnik. V takšnih primerih dolga števila zasedejo več lokacij za shranjevanje in se obdelujejo z več ukazi. V tem primeru se vsi pomnilniški sektorji, ki so dodeljeni za večbajtno binarno kodo, obravnavajo kot ena številka.

Glede na potrebo po posredovanju teh ali tistih informacij ločimo naslednje vrste ključev:

  • nepodpisan;
  • kode neposrednih celih znakov;
  • inverzi s predznakom;
  • dodatno podpišite;
  • siva koda;
  • Gray Express koda;
  • delne kode.

Oglejmo si vsakega od njih podrobneje.

Nepodpisana binarna koda

Ugotovimo, kaj je ta vrsta snemanja. V nepredznačenih celih kodah vsaka števka (binarna) predstavlja potenco dvojke. V tem primeru je najmanjše število, ki ga lahko zapišemo v tej obliki, nič, največje pa lahko predstavimo z naslednjo formulo: M = 2 n -1. Ti dve številki popolnoma definirata obseg ključa, ki se lahko uporabi za izražanje takšne binarne kode. Poglejmo si zmožnosti omenjene snemalne oblike. Pri uporabi te vrste nepodpisanega ključa, sestavljenega iz osmih bitov, bo obseg možnih števil od 0 do 255. Šestnajstbitna koda bo imela obseg od 0 do 65535. V osembitnih procesorjih se uporabljata dva pomnilniška sektorja za shranjevanje in pisanje takih številk, ki se nahajajo na sosednjih destinacijah. Posebni ukazi omogočajo delo s takšnimi ključi.

Neposredne cele številke s predznakom

V tej vrsti binarnega ključa se najpomembnejši bit uporablja za zapis predznaka števila. Nič ustreza plusu, ena pa minusu. Zaradi uvedbe te številke se obseg kodiranih številk premakne v negativno stran. Izkazalo se je, da lahko osembitni predpisani celoštevilski binarni ključ zapiše številke v območju od -127 do +127. Šestnajstbitni - v območju od -32767 do +32767. Osem-bitni mikroprocesorji uporabljajo dva sosednja sektorja za shranjevanje takih kod.

Pomanjkljivost te oblike zapisa je, da je treba znak in digitalne bite ključa obdelati ločeno. Algoritmi programov, ki delajo s temi kodami, so zelo zapleteni. Za spreminjanje in poudarjanje bitov znakov je treba uporabiti mehanizme za maskiranje tega simbola, kar prispeva k močnemu povečanju velikosti programske opreme in zmanjšanju njene zmogljivosti. Da bi odpravili to pomanjkljivost, je bila uvedena nova vrsta ključa - obratna binarna koda.

Podpisan reverzni ključ

Ta oblika zapisa se od neposrednih kod razlikuje le po tem, da se negativno število v njej pridobi z obračanjem vseh bitov ključa. V tem primeru sta digitalni in predznakovni bit enaka. Zahvaljujoč temu so algoritmi za delo s to vrsto kode bistveno poenostavljeni. Vendar pa obratni ključ zahteva poseben algoritem za prepoznavanje prve števke in izračun absolutne vrednosti števila. Kot tudi obnovitev predznaka dobljene vrednosti. Poleg tega se v povratnih in prednjih kodah številk uporabljata dva ključa za zapis ničle. Kljub temu, da ta vrednost nima pozitivnega ali negativnega predznaka.

Dvojiško število s komplementom dveh predznakov

Ta vrsta zapisa nima naštetih slabosti prejšnjih ključev. Takšne kode omogočajo neposredno seštevanje pozitivnih in negativnih števil. V tem primeru se analiza predznakovnega bita ne izvede. Vse to omogoča dejstvo, da so komplementarna števila naraven obroč simbolov, ne pa umetne tvorbe, kot sta tipki za naprej in nazaj. Poleg tega je pomemben dejavnik izredno enostavno izvesti izračune komplementa v binarnih kodah. Če želite to narediti, samo dodajte enega na vzvratni ključ. Pri uporabi te vrste znakovne kode, sestavljene iz osmih števk, bo razpon možnih številk od -128 do +127. Šestnajstbitni ključ bo imel razpon od -32768 do +32767. Osembitni procesorji uporabljajo tudi dva sosednja sektorja za shranjevanje takih številk.

Komplementna koda binarne dve je zanimiva zaradi svojega opaznega učinka, ki se imenuje pojav širjenja predznaka. Ugotovimo, kaj to pomeni. Ta učinek je, da je v procesu pretvorbe enobajtne vrednosti v dvobajtno dovolj, da se vrednosti predznakov nizkega bajta dodelijo vsakemu bitu visokega bajta. Izkazalo se je, da lahko uporabite najpomembnejše bite za shranjevanje podpisanega. V tem primeru se vrednost ključa sploh ne spremeni.

Siva koda

Ta oblika snemanja je v bistvu ključ v enem koraku. To pomeni, da se v procesu prehoda iz ene vrednosti v drugo spremeni le en bit informacije. V tem primeru napaka pri branju podatkov povzroči prehod iz enega položaja v drugega z rahlim časovnim zamikom. Vendar pa je pridobitev popolnoma napačnega rezultata kotnega položaja s takim postopkom popolnoma izključena. Prednost takšne kode je njena sposobnost zrcaljenja informacij. Na primer, z obračanjem najpomembnejših bitov lahko preprosto spremenite smer štetja. To se zgodi zaradi vnosa nadzora komplementa. V tem primeru se lahko izhodna vrednost povečuje ali zmanjšuje za eno fizično smer vrtenja osi. Ker so informacije, zapisane v sivem ključu, izključno kodirane narave, ki ne nosi realnih numeričnih podatkov, jih je pred nadaljnjim delom potrebno najprej pretvoriti v običajno binarno obliko zapisa. To se naredi s posebnim pretvornikom - dekoderjem Gray-Binar. To napravo je enostavno implementirati z uporabo osnovnih logičnih elementov v strojni in programski opremi.

Gray Express Code

Grayev standardni enostopenjski ključ je primeren za rešitve, ki so predstavljene kot številke, dve. V primerih, ko je treba izvesti druge rešitve, se iz te oblike zapisa izreže in uporabi le srednji del. Posledično je ohranjena enostopenjska narava ključa. Vendar v tej kodi začetek številskega obsega ni nič. Premakne se za določeno vrednost. Med obdelavo podatkov se od generiranih impulzov odšteje polovica razlike med začetno in zmanjšano ločljivostjo.

Predstavitev ulomkov v binarnem ključu s fiksno vejico

V procesu dela morate delovati ne le s celimi števili, ampak tudi z ulomki. Takšne številke je mogoče zapisati z uporabo neposrednih, obratnih in komplementarnih kod. Princip konstrukcije omenjenih ključev je enak kot pri celih številih. Do zdaj smo verjeli, da mora biti dvojiška vejica desno od najmanj pomembne števke. Ampak to ni res. Lahko se nahaja levo od najpomembnejše števke (v tem primeru lahko kot spremenljivko zapišemo le delna števila) in na sredini spremenljivke (lahko zapišemo mešane vrednosti).

Binarna predstavitev s plavajočo vejico

Ta oblika se uporablja za pisanje ali obratno - zelo majhna. Primeri vključujejo medzvezdne razdalje ali velikosti atomov in elektronov. Pri izračunu takih vrednosti bi morali uporabiti zelo veliko binarno kodo. Ni pa nam treba upoštevati vesoljskih razdalj z milimetrsko natančnostjo. Zato je zapis s fiksno vejico v tem primeru neučinkovit. Za prikaz takih kod se uporablja algebraična oblika. To pomeni, da je število zapisano kot mantisa, pomnožena z deset na potenco, ki odraža želeni vrstni red števila. Vedeti morate, da mantisa ne sme biti večja od ena, za decimalno vejico pa ničle.

Domneva se, da je binarni račun v začetku 18. stoletja izumil nemški matematik Gottfried Leibniz. Vendar, kot so nedavno odkrili znanstveniki, je bila ta vrsta aritmetike uporabljena že dolgo pred polinezijskim otokom Mangareva. Kljub dejstvu, da je kolonizacija skoraj popolnoma uničila prvotne številske sisteme, so znanstveniki obnovili zapletene binarne in decimalne vrste štetja. Poleg tega kognitivni znanstvenik Nunez trdi, da so binarno kodiranje uporabljali v starodavni Kitajski že v 9. stoletju pr. e. Tudi druge starodavne civilizacije, kot so Maji, so uporabljale kompleksne kombinacije decimalnih in binarnih sistemov za sledenje časovnim intervalom in astronomskim pojavom.

Nabor znakov, s katerimi je zapisano besedilo, se imenuje abeceda.

Število znakov v abecedi je njegovo moč.

Formula za določanje količine informacij: N=2b,

kjer je N moč abecede (število znakov),

b – število bitov (informacijska teža simbola).

Abeceda s kapaciteto 256 znakov lahko sprejme skoraj vse potrebne znake. Ta abeceda se imenuje dovolj.

Ker 256 = 2 8, potem je teža 1 znaka 8 bitov.

Merska enota 8 bitov je dobila ime 1 bajt:

1 bajt = 8 bitov.

Binarna koda vsakega znaka v računalniškem besedilu zavzame 1 bajt pomnilnika.

Kako so besedilne informacije predstavljene v računalniškem pomnilniku?

Priročnost kodiranja znakov bajt za bajtom je očitna, ker je bajt najmanjši del pomnilnika, ki ga je mogoče nasloviti, in zato lahko procesor pri obdelavi besedila dostopa do vsakega znaka posebej. Po drugi strani pa je 256 znakov povsem zadostno število za prikaz najrazličnejših simbolnih informacij.

Zdaj se pojavi vprašanje, katero osembitno binarno kodo dodeliti posameznemu znaku.

Jasno je, da je to pogojna stvar, lahko si izmislite veliko metod kodiranja.

Vsi znaki računalniške abecede so oštevilčeni od 0 do 255. Vsaka številka ustreza osem-bitni binarni kodi od 00000000 do 11111111. Ta koda je preprosto serijska številka znaka v binarnem številskem sistemu.

Tabela, v kateri so vsem znakom računalniške abecede dodeljene serijske številke, se imenuje kodirna tabela.

Različne vrste računalnikov uporabljajo različne kodirne tabele.

Tabela je postala mednarodni standard za osebne računalnike ASCII(beri aski) (Ameriška standardna koda za izmenjavo informacij).

Kodna tabela ASCII je razdeljena na dva dela.

Samo prva polovica tabele je mednarodni standard, tj. simboli s številkami iz 0 (00000000), do 127 (01111111).

Struktura tabele kodiranja ASCII

Serijska številka

Koda

Simbol

0 - 31

00000000 - 00011111

Simboli s številkami od 0 do 31 se običajno imenujejo kontrolni simboli.
Njihova funkcija je nadzor nad procesom prikaza besedila na zaslonu ali tiskanja, oddajanje zvočnega signala, označevanje besedila itd.

32 - 127

00100000 - 01111111

Standardni del tabele (angleščina). To vključuje male in velike črke latinske abecede, decimalne številke, ločila, vse vrste oklepajev, komercialne in druge simbole.
Znak 32 je presledek, tj. prazno mesto v besedilu.
Vsi drugi se odražajo z določenimi znaki.

128 - 255

10000000 - 11111111

Nadomestni del tabele (rusko).
Druga polovica kodne tabele ASCII, imenovana kodna stran (128 kod, od 10000000 do 11111111), ima lahko različne možnosti, vsaka možnost ima svojo številko.
Kodna stran se uporablja predvsem za prilagoditev nacionalnih abeced, razen latinice. V ruskem nacionalnem kodiranju so v tem delu tabele postavljeni znaki ruske abecede.

Prva polovica kodne tabele ASCII


Upoštevajte, da so v tabeli kodiranja črke (velike in male) razvrščene po abecednem vrstnem redu, številke pa v naraščajočem vrstnem redu. To upoštevanje leksikografskega reda v razporeditvi simbolov se imenuje načelo zaporednega kodiranja abecede.

Za črke ruske abecede se upošteva tudi načelo zaporednega kodiranja.

Druga polovica kodne tabele ASCII


Na žalost trenutno obstaja pet različnih kodiranj za cirilico (KOI8-R, Windows. MS-DOS, Macintosh in ISO). Zaradi tega se pogosto pojavijo težave pri prenosu ruskega besedila iz enega računalnika v drugega, iz enega programskega sistema v drugega.

Kronološko je bil eden prvih standardov za kodiranje ruskih črk v računalnikih KOI8 ("Information Exchange Code, 8-bit"). To kodiranje je bilo uporabljeno že v 70. letih prejšnjega stoletja na računalnikih računalniške serije ES, od sredine 80. let pa se je začelo uporabljati v prvih rusificiranih različicah operacijskega sistema UNIX.

Iz zgodnjih 90. let, časa prevlade operacijskega sistema MS DOS, ostaja kodiranje CP866 ("CP" pomeni "Code Page", "kodna stran").

Računalniki Apple z operacijskim sistemom Mac OS uporabljajo lastno kodiranje Mac.

Poleg tega je Mednarodna organizacija za standardizacijo (ISO) odobrila drugo kodiranje, imenovano ISO 8859-5, kot standard za ruski jezik.

Najpogostejše kodiranje, ki se trenutno uporablja, je Microsoft Windows, skrajšano CP1251.

Od poznih 90-ih je bil problem standardizacije kodiranja znakov rešen z uvedbo novega mednarodnega standarda, imenovanega Unicode. To je 16-bitno kodiranje, tj. vsakemu znaku dodeli 2 bajta pomnilnika. Seveda to poveča količino zasedenega pomnilnika za 2-krat. Toda takšna kodna tabela omogoča vključitev do 65536 znakov. Popolna specifikacija standarda Unicode vključuje vse obstoječe, izumrle in umetno ustvarjene abecede sveta ter številne matematične, glasbene, kemične in druge simbole.

Poskusimo si s tabelo ASCII predstavljati, kako bodo videti besede v pomnilniku računalnika.

Notranja predstavitev besed v pomnilniku računalnika

Včasih se zgodi, da besedila, sestavljenega iz črk ruske abecede, prejetega iz drugega računalnika, ni mogoče prebrati - na zaslonu monitorja je vidna nekakšna "abrakadabra". To se zgodi, ker računalniki uporabljajo različna kodiranja znakov za ruski jezik.

Posamezen digitalni signal ni zelo informativen, saj lahko sprejme le dve vrednosti: nič in ena. Zato se v primerih, ko je treba prenašati, obdelovati ali shranjevati velike količine informacij, običajno uporablja več vzporednih digitalnih signalov. Poleg tega je treba vse te signale obravnavati samo hkrati, vsak od njih posebej ni smiseln. V takih primerih govorimo o binarnih kodah, to je kodah, ki jih tvorijo digitalni (logični, binarni) signali. Vsak logični signal, vključen v kodo, se imenuje bit. Več bitov kot je vključenih v kodo, več vrednosti lahko sprejme ta koda.

Za razliko od desetiškega kodiranja števil, ki nam je znano, to je koda z osnovo deset, pri binarnem kodiranju je osnova kode številka dve (slika 2.9). To pomeni, da lahko vsaka kodna številka (vsaka številka) binarne kode ne sprejme deset vrednosti (kot v decimalni kodi: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9), ampak samo dva - 0 in 1. Pozicijski sistem zapisovanja ostaja enak, to je, da je najmanj pomembna številka zapisana na desni, najpomembnejša pa na levi. Če pa je v decimalnem sistemu teža vsake naslednje številke desetkrat večja od teže prejšnje, potem je v binarnem sistemu (z binarnim kodiranjem) dvakrat večja. Vsak bit binarne kode se imenuje bit (iz angleščine "Binary Digit" - "binarno število").

riž. 2.9. Decimalno in binarno kodiranje

V tabeli Slika 2.3 prikazuje ujemanje med prvimi dvajsetimi števili v decimalnem in dvojiškem sistemu.

Tabela kaže, da je zahtevano število binov binarne kode bistveno večje od zahtevanega števila bitov decimalne kode. Največje možno število s številom števk, ki je enako trem, je 999 v decimalnem sistemu in samo 7 v dvojiškem sistemu (to je 111 v binarni kodi). Na splošno lahko n-bitno binarno število zavzame 2n različnih vrednosti, n-bitno decimalno število pa lahko zavzame 10n različnih vrednosti. To pomeni, da pisanje velikih binarnih števil (z več kot desetimi števkami) ni zelo priročno.

Tabela 2.3. Ujemanje med števili v decimalnem in dvojiškem sistemu
Decimalni sistem Dvojiški sistem Decimalni sistem Dvojiški sistem

Da bi poenostavili zapisovanje binarnih števil, je bil predlagan tako imenovani heksadecimalni sistem (šestnajstiško kodiranje). V tem primeru so vsi binarni biti razdeljeni v skupine po štiri bite (začenši z najmanj pomembnim), nato pa je vsaka skupina kodirana z enim simbolom. Vsaka taka skupina se imenuje grizljanje(oz grizljanje, zvezek) in dve skupini (8 bitov) - bajt. Iz mize 2.3 kaže, da lahko 4-bitno binarno število sprejme 16 različnih vrednosti (od 0 do 15). Zato je tudi zahtevano število znakov za šestnajstiško kodo 16, od tod tudi ime kode. Prvih 10 znakov so številke od 0 do 9, nato pa se uporabi 6 začetnih velikih črk latinice: A, B, C, D, E, F.

riž. 2.10. Dvojiški in šestnajstiški zapis števil

V tabeli 2.4 prikazuje primere šestnajstiškega kodiranja prvih 20 števil (binarna števila so podana v oklepaju), sl. Na sliki 2.10 je prikazan primer zapisa binarnega števila v šestnajstiški obliki. Za označevanje šestnajstiškega kodiranja se včasih na koncu številke uporablja črka "h" ali "H" (iz angleščine Hexadecimal), na primer vnos A17F h označuje šestnajstiško število A17F. Tukaj A1 predstavlja visoki bajt števila, 7F pa nizki bajt števila. Pokliče se celotna številka (v našem primeru dvobajtna številka). v besedi.

Tabela 2.4. Šestnajstiški sistem kodiranja
Decimalni sistem heksadecimalni sistem Decimalni sistem heksadecimalni sistem
0 (0) A (1010)
1(1) B (1011)
2 (10) C (1100)
3 (11) D (1101)
4 (100) E(1110)
5 (101) Ž (1111)
6 (110) 10 (10000)
7 (111) 11 (10001)
8 (1000) 12 (10010)
9 (1001) 13 (10011)

Če želite šestnajstiško število pretvoriti v decimalno, morate vrednost najnižje (nič) števke pomnožiti z ena, vrednost naslednje (prve) števke s 16, drugo števko z 256 (16 2) itd. , nato pa dodajte vse izdelke. Na primer, vzemite številko A17F:

A17F=F*16 0 + 7*16 1 + 1*16 2 + A*16 3 = 15*1 + 7*16+1*256+10*4096=41343

Toda vsak specialist za digitalno opremo (razvijalec, operater, serviser, programer itd.) se mora naučiti ravnati s šestnajstiškimi in binarnimi sistemi tako svobodno kot z navadnimi decimalnimi sistemi, tako da niso potrebni prenosi iz sistema v sistem.

Poleg obravnavanih kod obstaja tudi tako imenovana binarno-decimalna predstavitev števil. Tako kot v šestnajstiški kodi tudi v kodi BCD vsaka številka kode ustreza štirim binarnim cifram, vendar lahko vsaka skupina štirih binarnih števk ne sprejme šestnajst, ampak samo deset vrednosti, kodiranih z znaki 0, 1, 2, 3, 4. , 5, 6, 7, 8, 9. To pomeni, da eno decimalno mesto ustreza štirim binarnim mestom. Posledično se izkaže, da se pisanje števil v binarno decimalno kodo ne razlikuje od pisanja v navadno decimalno kodo (tabela 2.6), v resnici pa gre le za posebno binarno kodo, katere vsaka številka ima lahko samo dve vrednosti: 0 in 1. Koda BCD je včasih zelo priročna za organiziranje decimalnih digitalnih indikatorjev in preglednic.

Tabela 2.6. Dvojiški decimalni sistem kodiranja
Decimalni sistem Dvojiški decimalni sistem Decimalni sistem Dvojiški decimalni sistem
0 (0) 10 (1000)
1(1) 11 (1001)
2 (10) 12 (10010)
3 (11) 13 (10011)
4 (100) 14 (10100)
5 (101) 15 (10101)
6 (110) 16 (10110)
7 (111) 17 (10111)
8 (1000) 18 (11000)
9 (1001) 19 (11001)

V binarni kodi lahko izvajate poljubne aritmetične operacije s števili: seštevanje, odštevanje, množenje, deljenje.

Razmislite, na primer, o seštevanju dveh 4-bitnih binarnih števil. Seštejmo število 0111 (decimalno 7) in 1011 (decimalno 11). Seštevanje teh števil ni nič težje kot v decimalnem zapisu:

Pri seštevanju 0 in 0 dobimo 0, pri seštevanju 1 in 0 dobimo 1, pri seštevanju 1 in 1 dobimo 0 in prenesemo na naslednjo števko 1. Rezultat je 10010 (decimalno 18). Seštevanje katerih koli dveh n-bitnih binarnih števil lahko povzroči n-bitno število ali (n+1)-bitno število.

Odštevanje poteka na enak način. Od števila 10010 (18) naj odštejemo število 0111 (7). Števila pišemo poravnana na najmanj pomembno števko in odštevamo na enak način kot pri decimalnem sistemu:

Pri odštevanju 0 od 0 dobimo 0, pri odštevanju 0 od 1 dobimo 1, pri odštevanju 1 od 1 dobimo 0, pri odštevanju 1 od 0 dobimo 1 in si sposodimo 1 v naslednji števki. Rezultat je 1011 (decimalno 11).

Pri odštevanju je mogoče dobiti negativna števila, zato morate uporabiti dvojiško predstavitev negativnih števil.

Za hkratno predstavitev binarnih pozitivnih in binarnih negativnih števil se najpogosteje uporablja tako imenovana koda komplementa dveh. Negativna števila v tej kodi so izražena s številom, ki bo, če ga dodamo pozitivnemu številu enake vrednosti, dalo nič. Da bi dobili negativno število, morate vse bite istega pozitivnega števila spremeniti v nasprotne (0 proti 1, 1 proti 0) in rezultatu dodati 1. Na primer, zapišite število –5. Število 5 v binarni kodi je videti kot 0101. Bite zamenjamo z nasprotnimi: 1010 in dodamo enega: 1011. Rezultat seštejemo z izvirnim številom: 1011 + 0101 = 0000 (zanemarjamo prenos na peto mesto) .

Negativna števila v kodi komplementa dvojke se od pozitivnih števil razlikujejo po vrednosti najpomembnejše števke: ena v najpomembnejši števki določa negativno število, ničla pa pozitivno število.

Poleg standardnih aritmetičnih operacij binarni številski sistem uporablja tudi nekatere posebne operacije, na primer seštevanje po modulu 2. Ta operacija (označena z A) je bitna, kar pomeni, da ni prenosov iz ene števke v drugo in ni izposojanja najvišje števke. Pravila za seštevanje modula 2 so naslednja: , , . Ista operacija se imenuje funkcija Ekskluzivni OR. Na primer, seštejmo modulo 2 dve binarni števili 0111 in 1011:

Druge bitne operacije na binarnih številih vključujejo funkcijo IN in funkcijo ALI. Rezultat funkcije IN je ena samo, če sta ustrezna bita obeh prvotnih števil oba ena, sicer je rezultat -0. Rezultat funkcije ALI je ena, ko je vsaj eden od ustreznih bitov izvirnih števil 1, sicer je rezultat 0.

Računalniki ne razumejo besed in številk tako kot ljudje. Sodobna programska oprema omogoča končnemu uporabniku, da to ignorira, vendar na najnižjih ravneh vaš računalnik deluje na podlagi binarnega električnega signala, ki ima samo dve državi: ali obstaja tok ali ne. Če želite "razumeti" kompleksne podatke, jih mora vaš računalnik kodirati v binarni obliki.

Binarni sistem temelji na dveh števkah, 1 in 0, ki ustrezata stanjem vklopa in izklopa, ki jih vaš računalnik razume. Verjetno poznate decimalni sistem. Uporablja deset števk, od 0 do 9, nato pa preide na naslednji vrstni red, da tvori dvomestna števila, pri čemer je vsako število desetkrat večje od prejšnjega. Dvojiški sistem je podoben, saj je vsaka številka dvakrat večja od prejšnje.

Štetje v binarni obliki

V binarnem izrazu je prva številka enakovredna 1 v decimalnem sistemu. Druga številka je 2, tretja 4, četrta 8 in tako naprej - vsakič se podvoji. Če dodate vse te vrednosti, boste dobili število v decimalni obliki.

1111 (v dvojiškem) = 8 + 4 + 2 + 1 = 15 (v decimalnem)

Obračunavanje 0 nam daje 16 možnih vrednosti za štiri binarne bite. Premaknite 8 bitov in dobili boste 256 možnih vrednosti. To zavzame veliko več prostora za predstavitev, saj nam štiri decimalna mesta dajo 10.000 možnih vrednosti. Seveda binarna koda zavzame več prostora, vendar računalniki binarne datoteke razumejo veliko bolje kot decimalni sistem. In za nekatere stvari, kot je logična obdelava, je binarno bolje kot decimalno.

Povedati je treba, da obstaja še en osnovni sistem, ki se uporablja pri programiranju: šestnajstiško. Čeprav računalniki ne delujejo v šestnajstiškem formatu, ga programerji uporabljajo za predstavitev binarnih naslovov v človeku berljivem formatu pri pisanju kode. To je zato, ker lahko dve števki v šestnajstiškem številu predstavljata cel bajt, kar pomeni, da nadomestita osem števk v dvojiški obliki. Šestnajstiški sistem uporablja številke 0-9 in črke od A do F, da ustvari dodatnih šest števk.

Zakaj računalniki uporabljajo binarne datoteke?

Kratek odgovor: strojna oprema in zakoni fizike. Vsak znak v vašem računalniku je električni signal in v zgodnjih dneh računalništva je bilo merjenje električnih signalov veliko težje. Bolj smiselno je bilo razlikovati samo med "vklopljenim" stanjem, ki ga predstavlja negativni naboj, in "izklopljenim" stanjem, ki ga predstavlja pozitivni naboj.

Za tiste, ki ne vedo, zakaj je "off" predstavljen s pozitivnim nabojem, je to zato, ker imajo elektroni negativen naboj in več elektronov pomeni več toka z negativnim nabojem.

Tako so se uporabljali zgodnji računalniki velikosti sobe binarne datoteke za ustvarjanje svojih sistemov, in čeprav so uporabljali starejšo, zajetnejšo opremo, so delali po istih temeljnih načelih. Sodobni računalniki uporabljajo tako imenovani tranzistor za izvajanje izračunov z binarno kodo.

Tukaj je diagram tipičnega tranzistorja:

V bistvu omogoča tok, da teče od vira do odtoka, če je tok v vratih. To tvori binarni ključ. Proizvajalci lahko naredijo te tranzistorje neverjetno majhne - vse do 5 nanometrov ali velikosti dveh verig DNK. Tako delujejo sodobni procesorji in celo pri njih lahko pride do težav pri razlikovanju med vklopljenimi in izklopljenimi stanji (čeprav je to posledica njihove nerealne molekularne velikosti, ki je podvržena nenavadnosti kvantne mehanike).

Zakaj samo binarni sistem

Torej si morda mislite: »Zakaj samo 0 in 1? Zakaj ne bi dodali še ene številke? Čeprav je to deloma posledica tradicije ustvarjanja računalnikov, bi hkrati dodajanje druge številke pomenilo potrebo po razlikovanju drugega stanja toka, ne le "izklopljeno" ali "vklopljeno".

Težava tukaj je v tem, da če želite uporabiti več napetostnih nivojev, potrebujete način za preprosto izvajanje izračunov na njih, trenutna strojna oprema, ki je tega zmožna, pa ni izvedljiva kot nadomestilo za binarne izračune. Na primer, obstaja tako imenovani trojni računalnik, se je razvil v petdesetih letih 20. stoletja, vendar se je razvoj tam ustavil. Ternarna logika bolj učinkovit kot binarni, vendar še ni učinkovite zamenjave za binarni tranzistor ali vsaj ni tranzistorja v enakem majhnem obsegu kot binarni.

Razlog, zakaj ne moremo uporabiti ternarne logike, je v tem, kako so tranzistorji povezani v računalniku in kako se uporabljajo za matematične izračune. Tranzistor prejme informacije na dveh vhodih, izvede operacijo in vrne rezultat na en izhod.

Tako je binarna matematika lažja za računalnik kot karkoli drugega. Binarno logiko je enostavno pretvoriti v binarne sisteme, pri čemer True in False ustrezata stanjema On in Off.

Binarna tabela resnic, ki deluje na binarni logiki, bo imela štiri možne izhode za vsako temeljno operacijo. Ker pa trojna vrata uporabljajo tri vhode, bi imela trojna tabela resnic 9 ali več. Medtem ko ima binarni sistem 16 možnih operatorjev (2^2^2), bi jih imel ternarni sistem 19683 (3^3^3). Skaliranje postane težava, ker je trinity sicer učinkovitejši, vendar je tudi eksponentno bolj zapleten.

Kdo ve? V prihodnosti bomo morda videli ternarne računalnike, saj se binarna logika sooča z izzivi miniaturizacije. Za zdaj bo svet še naprej deloval v binarnem načinu.

Dekodiranje binarne kode se uporablja za prevajanje iz strojnega jezika v običajni jezik. Spletna orodja delujejo hitro, čeprav tega ni težko narediti ročno.

Binarna ali dvojiška koda se uporablja za digitalni prenos informacij. Nabor samo dveh znakov, kot sta 1 in 0, vam omogoča šifriranje katere koli informacije, pa naj bo to besedilo, številke ali slika.

Kako šifrirati z binarno kodo

Za ročno pretvorbo poljubnih simbolov v binarno kodo se uporabljajo tabele, v katerih je vsakemu simbolu dodeljena binarna koda v obliki ničel in enic. Najpogostejši sistem kodiranja je ASCII, ki uporablja 8-bitni kodni zapis.

Osnovna tabela prikazuje dvojiške kode za latinico, številke in nekatere simbole.

V razširjeni tabeli je dodana binarna interpretacija cirilice in dodatni znaki.

Za pretvorbo iz binarne kode v besedilo ali številke preprosto izberite želene kode iz tabel. Seveda pa ročno opravljanje tovrstnega dela traja dolgo časa. Poleg tega so napake neizogibne. Računalnik se veliko hitreje spopade z dešifriranjem. In sploh ne pomislimo, ko tipkamo besedilo na zaslonu, da se besedilo v tistem trenutku pretvori v binarno kodo.

Pretvarjanje binarnega števila v decimalno

Če želite ročno pretvoriti število iz binarnega številskega sistema v decimalni številski sistem, lahko uporabite dokaj preprost algoritem:

  1. Pod binarno številko, začenši s skrajno desno števko, zapišite število 2 v naraščajočih potencah.
  2. Potence števila 2 se pomnožijo z ustrezno števko binarnega števila (1 ali 0).
  3. Dodajte dobljene vrednosti.

Tako izgleda ta algoritem na papirju:

Spletne storitve za binarno dešifriranje

Če še vedno želite videti dešifrirano binarno kodo ali, nasprotno, pretvoriti besedilo v binarno obliko, je najlažji način, da uporabite spletne storitve, zasnovane za te namene.

Dve okni, ki ju poznamo pri spletnih prevodih, vam omogočata, da skoraj istočasno vidite obe različici besedila v navadni in binarni obliki. In dešifriranje se izvaja v obe smeri. Vnašanje besedila je preprosto kopiranje in lepljenje.