Kodiranje binarnog koda. Binarni kod. Vrste i duljina binarnog koda. Obrnuti binarni kod. Zašto računalo koristi binarni kod?

05.09.2023 Vijesti

Binarni kod je oblik bilježenja informacija u obliku jedinica i nula. Ovo je pozicijski s bazom 2. Danas se binarni kod (tablica prikazana malo niže sadrži neke primjere pisanja brojeva) koristi u svim digitalnim uređajima bez iznimke. Njegova popularnost objašnjava se visokom pouzdanošću i jednostavnošću ovog oblika snimanja. Binarna aritmetika je vrlo jednostavna, te ju je u skladu s tim lako implementirati na hardverskoj razini. komponente (ili, kako ih još nazivaju, logičke) su vrlo pouzdane, jer rade u samo dva stanja: logička jedinica (ima struje) i logička nula (nema struje). Stoga se povoljno uspoređuju s analognim komponentama, čiji se rad temelji na prijelaznim procesima.

Kako je sastavljen binarni zapis?

Hajde da shvatimo kako se formira takav ključ. Jedan bit binarnog koda može sadržavati samo dva stanja: nula i jedan (0 i 1). Kada koristite dva bita, moguće je zapisati četiri vrijednosti: 00, 01, 10, 11. Trobitni unos sadrži osam stanja: 000, 001 ... 110, 111. Kao rezultat toga, nalazimo da je duljina binarni kod ovisi o broju bitova. Ovaj izraz se može napisati pomoću sljedeće formule: N =2m, gdje je: m broj znamenki, a N je broj kombinacija.

Vrste binarnih kodova

U mikroprocesorima se takvi ključevi koriste za snimanje različitih obrađenih informacija. Širina binarnog koda može znatno premašiti njegovu ugrađenu memoriju. U takvim slučajevima dugi brojevi zauzimaju nekoliko mjesta za pohranu i obrađuju se pomoću nekoliko naredbi. U ovom slučaju, svi memorijski sektori koji su alocirani za višebajtni binarni kod smatraju se jednim brojem.

Ovisno o potrebi pružanja ove ili one informacije, razlikuju se sljedeće vrste ključeva:

  • nepotpisan;
  • izravni kodovi cijelih znakova;
  • predpisani inverzi;
  • potpisati dodatno;
  • sivi kod;
  • Gray Express kod;
  • frakcijski kodovi.

Pogledajmo pobliže svaki od njih.

Nepredpisani binarni kod

Razmotrimo što je ova vrsta snimanja. U kodovima cijelih brojeva bez predznaka, svaka znamenka (binarna) predstavlja potenciju broja dva. U ovom slučaju, najmanji broj koji se može napisati u ovom obliku je nula, a najveći se može prikazati sljedećom formulom: M = 2 n -1. Ova dva broja u potpunosti definiraju raspon ključa koji se može koristiti za izražavanje takvog binarnog koda. Pogledajmo mogućnosti spomenutog obrasca za snimanje. Kada koristite ovu vrstu nepotpisanog ključa, koji se sastoji od osam bitova, raspon mogućih brojeva bit će od 0 do 255. Šesnaestobitni kod će imati raspon od 0 do 65535. U osam-bitnim procesorima koriste se dva memorijska sektora. za pohranjivanje i pisanje takvih brojeva koji se nalaze u susjednim odredištima. Posebne naredbe omogućuju rad s takvim tipkama.

Izravni cjelobrojni kodovi s predznakom

U ovoj vrsti binarnog ključa, bit najvećeg značaja koristi se za bilježenje predznaka broja. Nula odgovara plusu, a jedan minusu. Kao rezultat uvođenja ove znamenke, raspon kodiranih brojeva pomiče se u negativnu stranu. Ispada da osam-bitni binarni ključ cijelog broja s predznakom može pisati brojeve u rasponu od -127 do +127. Šesnaest-bitni - u rasponu od -32767 do +32767. Osmobitni mikroprocesori koriste dva susjedna sektora za pohranu takvih kodova.

Nedostatak ovog oblika snimanja je što se znakovni i digitalni bitovi ključa moraju odvojeno obrađivati. Pokazalo se da su algoritmi programa koji rade s tim kodovima vrlo složeni. Za promjenu i isticanje bitova znaka potrebno je koristiti mehanizme za maskiranje ovog simbola, što pridonosi naglom povećanju veličine softvera i smanjenju njegove izvedbe. Kako bi se otklonio ovaj nedostatak, uvedena je nova vrsta ključa - obrnuti binarni kod.

Potpisani reversni ključ

Ovaj oblik zapisa razlikuje se od izravnih kodova samo po tome što se negativni broj u njemu dobiva okretanjem svih bitova ključa. U ovom slučaju, digitalni i predznačni bitovi su identični. Zahvaljujući tome, algoritmi za rad s ovom vrstom koda značajno su pojednostavljeni. Međutim, obrnuti ključ zahtijeva poseban algoritam za prepoznavanje znaka prve znamenke i izračunavanje apsolutne vrijednosti broja. Kao i vraćanje predznaka rezultirajuće vrijednosti. Štoviše, u obrnutim i naprijed kodovima brojeva, dva ključa se koriste za pisanje nule. Unatoč tome što ova vrijednost nema pozitivan ili negativan predznak.

Predpisani binarni broj s komplementom dva

Ova vrsta zapisa nema navedene nedostatke prethodnih ključeva. Takvi kodovi omogućuju izravno zbrajanje pozitivnih i negativnih brojeva. U ovom slučaju se ne provodi analiza bita predznaka. Sve je to moguće zahvaljujući činjenici da su komplementarni brojevi prirodni prsten simbola, a ne umjetne formacije kao što su tipke za naprijed i natrag. Štoviše, važan čimbenik je to što je izuzetno jednostavno izvesti izračune komplementa u binarnim kodovima. Da biste to učinili, samo dodajte jedan obrnutom ključu. Kada koristite ovu vrstu znakovnog koda, koji se sastoji od osam znamenki, raspon mogućih brojeva bit će od -128 do +127. Ključ od šesnaest bita imat će raspon od -32768 do +32767. Osmobitni procesori također koriste dva susjedna sektora za pohranu takvih brojeva.

Binarni komplementni kod dva zanimljiv je zbog svog vidljivog učinka, koji se naziva fenomen propagacije predznaka. Hajdemo shvatiti što ovo znači. Ovaj učinak je da je u procesu pretvaranja jednobajtne vrijednosti u dvobajtnu, dovoljno dodijeliti vrijednosti bitova znaka niskog bajta svakom bitu visokog bajta. Ispada da možete koristiti najvažnije bitove za pohranjivanje potpisanog. U tom se slučaju vrijednost ključa uopće ne mijenja.

Sivi kod

Ovaj oblik snimanja je u biti ključ u jednom koraku. Odnosno, u procesu prijelaza s jedne vrijednosti na drugu mijenja se samo jedan bit informacije. U ovom slučaju, pogreška u očitavanju podataka dovodi do prijelaza s jedne pozicije na drugu s malim vremenskim pomakom. Međutim, dobivanje potpuno netočnog rezultata kutnog položaja takvim postupkom potpuno je isključeno. Prednost takvog koda je njegova sposobnost zrcaljenja informacija. Na primjer, invertiranjem najvažnijih bitova, možete jednostavno promijeniti smjer brojanja. To se događa zahvaljujući ulazu kontrole komplementa. U tom slučaju izlazna vrijednost može biti ili rastuća ili opadajuća za jedan fizički smjer rotacije osi. Budući da su informacije zapisane u Gray ključu isključivo kodirane prirode, koja ne nosi prave numeričke podatke, prije daljnjeg rada potrebno ih je prvo pretvoriti u uobičajeni binarni oblik zapisa. To se radi pomoću posebnog pretvarača - Gray-Binar dekodera. Ovaj uređaj se lako implementira korištenjem elementarnih logičkih elemenata u hardveru i softveru.

Grey Express Code

Grayev standardni ključ u jednom koraku prikladan je za rješenja koja su predstavljena brojevima, dva. U slučajevima kada je potrebno implementirati druga rješenja, iz ovog oblika snimanja izrezuje se i koristi samo srednji dio. Kao rezultat, očuvana je jednostupanjska priroda ključa. Međutim, u ovom kodu početak numeričkog raspona nije nula. Pomaknut je za navedenu vrijednost. Tijekom obrade podataka, pola razlike između početne i smanjene rezolucije oduzima se od generiranih impulsa.

Prikaz frakcijskog broja u binarnom ključu s fiksnom točkom

U procesu rada morate raditi ne samo s cijelim brojevima, već i s razlomcima. Takvi se brojevi mogu pisati izravnim, obrnutim i komplementarnim kodovima. Princip konstrukcije spomenutih ključeva je isti kao kod cijelih brojeva. Do sada smo vjerovali da bi binarni zarez trebao biti desno od najmanje značajne znamenke. Ali to nije istina. Može se nalaziti lijevo od najznačajnije znamenke (u ovom slučaju se kao varijabla mogu pisati samo razlomački brojevi) i u sredini varijable (mogu se pisati mješovite vrijednosti).

Binarno predstavljanje s pokretnim zarezom

Ovaj oblik se koristi za pisanje ili obrnuto - vrlo mali. Primjeri uključuju međuzvjezdane udaljenosti ili veličine atoma i elektrona. Prilikom izračunavanja takvih vrijednosti, morali bismo koristiti vrlo veliki binarni kod. Međutim, ne trebamo uzimati u obzir svemirske udaljenosti s milimetarskom preciznošću. Stoga je oblik zapisa s fiksnom točkom u ovom slučaju neučinkovit. Za prikaz takvih kodova koristi se algebarski oblik. To jest, broj je napisan kao mantisa pomnožena s deset na potenciju koja odražava željeni redoslijed broja. Treba znati da mantisa ne smije biti veća od jedan, a iza decimalne točke ne smije se pisati nula.

Vjeruje se da je binarni račun početkom 18. stoljeća izumio njemački matematičar Gottfried Leibniz. Međutim, kako su znanstvenici nedavno otkrili, mnogo prije polinezijskog otoka Mangareva korištena je ova vrsta aritmetike. Unatoč činjenici da je kolonizacija gotovo potpuno uništila izvorne sustave brojeva, znanstvenici su obnovili složene binarne i decimalne vrste brojanja. Osim toga, kognitivni znanstvenik Nunez tvrdi da se binarno kodiranje koristilo u drevnoj Kini još u 9. stoljeću prije Krista. e. Druge drevne civilizacije, poput Maja, također su koristile složene kombinacije decimalnih i binarnih sustava za praćenje vremenskih intervala i astronomskih pojava.

Ako ste zainteresirani za učenje čitanja binarnih brojeva, važno je razumjeti kako binarni brojevi funkcioniraju. Binarni sustav poznat je kao sustav numeriranja "baze 2", što znači da postoje dva moguća broja za svaku znamenku; jedan ili nula. Veliki brojevi zapisuju se dodavanjem dodatnih binarnih jedinica ili nula.



Razumijevanje binarnih brojeva


Poznavanje čitanja binarnih datoteka nije ključno za korištenje računala. Ali dobro je razumjeti koncept kako bismo bolje razumjeli kako računala pohranjuju brojeve u memoriju. Također vam omogućuje razumijevanje pojmova kao što su 16-bit, 32-bit, 64-bit i mjerenja memorije kao što su bajtovi (8 bita).



"Čitanje" binarnog koda obično znači pretvaranje binarnog broja u broj s bazom 10 (decimalni) koji je ljudima poznat. Ovu pretvorbu prilično je lako izvesti u glavi nakon što shvatite kako binarni jezik funkcionira.

Svaka znamenka u binarnom broju ima određeno značenje osim ako je znamenka nula. Nakon što odredite sve ove vrijednosti, jednostavno ih zbrojite kako biste dobili 10-znamenkasti decimalni broj binarnog broja. Da vidite kako ovo radi, uzmite binarni broj 11001010.


1. Najbolji način čitanja binarnog broja je da počnete od krajnje desne znamenke i idete lijevo. Snaga ove prve lokacije je nula, odnosno vrijednost za ovu znamenku, ako nije nula, jednaka je dva potencije nule ili jedan. U ovom slučaju, budući da je znamenka nula, vrijednost za tu lokaciju bit će nula.



2. Zatim prijeđite na sljedeću znamenku. Ako je jedan, onda izračunajte dva na potenciju jedan. Zapišite ovu vrijednost. U ovom primjeru vrijednost je potencija broja dva jednaka dva.



3. Nastavite ponavljati ovaj postupak dok ne dođete do krajnjeg lijevog broja.



4. Za kraj, sve što trebate učiniti je zbrojiti sve ove brojeve kako biste dobili ukupnu decimalnu vrijednost binarnog broja: 128 + 64 + 0 + 0 + 8 + 0 + 2 + 0 = 202 .


Bilješka: Drugi način da vidite cijeli ovaj proces u obliku jednadžbe je ovaj: 1 x 2 7 + 1 x 2 6 + 0 x 2 5 + 0 x 2 4 + 1 x 2 3 + 0 x 2 2 + 1 x 2 1 + 0 x 2 0 = 20.


Binarni brojevi s potpisom


Gornja metoda radi za osnovne binarne brojeve bez predznaka. Međutim, računala trebaju način predstavljanja negativnih brojeva također pomoću binarnog koda.


Zbog toga računala koriste binarne brojeve s predznakom. U ovoj vrsti sustava, krajnja lijeva znamenka poznata je kao bit predznaka, a preostale znamenke poznate su kao bitovi amplitude.


Čitanje binarnog broja s predznakom gotovo je isto kao i nepredpisanog, s jednom malom razlikom.


1. Slijedite isti postupak kao gore za nepredznačeni binarni broj, ali prestanite kada dođete do krajnjeg lijevog bita.



2. Za određivanje predznaka, pogledajte krajnji lijevi bit. Ako je jedan, onda je broj negativan. Ako je nula, onda je broj pozitivan.



3. Sada napravite iste izračune kao i prije, ali primijenite odgovarajući znak na broj označen krajnjim lijevim bitom: 64 + 0 + 0 + 8 + 0 + 2 + 0 = -74 .


4. Binarna metoda s predznakom omogućuje računalima da predstavljaju brojeve koji su pozitivni ili negativni. Međutim, on troši vodeći bit, što znači da veliki brojevi zahtijevaju malo više memorije nego nepredpisani binarni brojevi.

Hajde da shvatimo kako se sve to radi pretvoriti tekstove u digitalni kod? Usput, na našoj web stranici možete pretvoriti bilo koji tekst u decimalni, heksadecimalni, binarni kod pomoću Online Code Calculator.

Kodiranje teksta.

Prema računalnoj teoriji, svaki se tekst sastoji od pojedinačnih znakova. Ovi znakovi uključuju: slova, brojeve, mala interpunkcijska slova, posebne znakove (“”, №, () itd.), također uključuju razmake između riječi.

Potrebna baza znanja. Skup simbola kojima pišem tekst zove se ABECEDA.

Broj simbola uzetih u abecedi predstavlja njenu snagu.

Količina informacija može se odrediti formulom: N = 2b

  • N je ista snaga (mnogo simbola),
  • b - Bit (težina preuzetog simbola).

Abeceda koja sadrži 256 može sadržavati gotovo sve potrebne znakove. Takve se abecede nazivaju DOVOLJNE.

Ako uzmemo abecedu s kapacitetom od 256, i imajte na umu da je 256 = 28

  • 8 bita se uvijek naziva 1 bajt:
  • 1 bajt = 8 bita.

Ako svaki znak pretvorite u binarni kod, tada će ovaj računalni tekstualni kod zauzimati 1 bajt.

Kako tekstualne informacije mogu izgledati u memoriji računala?

Bilo koji tekst se upisuje na tipkovnici, na tipkama tipkovnice vidimo znakove koji su nam poznati (brojevi, slova itd.). Oni ulaze u RAM računala samo u obliku binarnog koda. Binarni kod za svaki znak izgleda kao osmeroznamenkasti broj, na primjer 00111111.

Budući da je bajt najmanji komad memorije koji se može adresirati, a memorija se adresira na svaki znak posebno, pogodnost takvog kodiranja je očita. Međutim, 256 znakova je vrlo prikladan iznos za bilo koju simboličnu informaciju.

Naravno, postavilo se pitanje: Koje konkretno? osmeroznamenkasti kod pripada svakom liku? A kako pretvoriti tekst u digitalni kod?

Ovaj proces je uvjetovan i imamo pravo smisliti drugačije načini kodiranja znakova. Svaki znak abecede ima svoj broj od 0 do 255. I svakom broju je dodijeljen kod od 00000000 do 11111111.

Tablica za kodiranje je "varalica" u kojoj su znakovi abecede naznačeni u skladu sa serijskim brojem. Različite vrste računala koriste različite tablice kodiranja.

ASCII (ili Asci) je postao međunarodni standard za osobna računala. Stol ima dva dijela.

Prva polovica je za ASCII tablicu. (Bilo je to prvo poluvrijeme koje je postalo standard.)

Usklađenost s leksikografskim redoslijedom, odnosno da su u tablici slova (mala i velika) navedena striktnim abecednim redoslijedom, a brojevi rastućim redoslijedom, naziva se načelo sekvencijalnog kodiranja abecede.

Za rusku abecedu također slijede princip sekvencijalnog kodiranja.

Danas, u naše vrijeme, koriste se cijeli pet sustava kodiranja Ruska abeceda (KOI8-R, Windows. MS-DOS, Macintosh i ISO). Zbog broja sustava kodiranja i nedostatka jednog standarda, vrlo često nastaju nesporazumi s prijenosom ruskog teksta u njegov računalni oblik.

Jedan od prvih standardi za kodiranje ruske abecede a na osobnim računalima smatraju KOI8 (“Information exchange code, 8-bit”). Ovo kodiranje korišteno je sredinom sedamdesetih na nizu ES računala, a od sredine osamdesetih počelo se koristiti u prvim operativnim sustavima UNIX prevedenim na ruski jezik.

Od ranih devedesetih, tzv. vremena kada je dominirao MS DOS operativni sustav, pojavio se sustav kodiranja CP866 ("CP" je kratica za "Code Page").

Gigantske računalne tvrtke APPLE, sa svojim inovativnim sustavom pod kojim su radile (Mac OS), počinju koristiti vlastiti sustav za kodiranje MAC abecede.

Međunarodna organizacija za standardizaciju (ISO) postavlja još jedan standard za ruski jezik abecedni kodni sustav, koji se naziva ISO 8859-5.

A najčešći sustav za kodiranje abecede ovih dana izumljen je u Microsoft Windowsima i zove se CP1251.

Od druge polovice devedesetih problem standarda za prevođenje teksta u digitalni kod za ruski jezik i ne samo riješen je uvođenjem sustava pod nazivom Unicode u standard. Predstavljen je šesnaestobitnim kodiranjem, što znači da su za svaki znak dodijeljena točno dva bajta RAM-a. Naravno, s ovim kodiranjem troškovi memorije su udvostručeni. Međutim, takav kodni sustav omogućuje pretvaranje do 65 536 znakova u elektronički kod.

Specifičnost standardnog Unicode sustava je uključivanje apsolutno bilo koje abecede, bilo postojeće, izumrle ili izmišljene. U konačnici, apsolutno bilo koja abeceda, osim ovoga, Unicode sustav uključuje puno matematičkih, kemijskih, glazbenih i općih simbola.

Upotrijebimo ASCII tablicu da vidimo kako bi riječ mogla izgledati u memoriji vašeg računala.

Često se događa da vaš tekst, koji je napisan slovima ruske abecede, nije čitljiv, to je zbog razlika u sustavima kodiranja abecede na računalima. Ovo je vrlo čest problem koji se nalazi prilično često.


Aryabhata
ćirilica
grčki gruzijski
etiopski
židovska
Akshara-sankhya ostalo babilonski
Egipćanin
etrurski
rimski
Dunav Potkrovlje
Kipu
majanski
egejski
Simboli KPPU Pozicijski , , , , , , , , , , Nega-pozicijski Simetrično Mješoviti sustavi Fibonacci Nepozicijski Jedinica (unarna)

Binarni brojevni sustav- položajni brojevni sustav s bazom 2. Zahvaljujući izravnoj implementaciji u digitalne elektroničke sklopove pomoću logičkih vrata, binarni sustav se koristi u gotovo svim modernim računalima i drugim računalnim elektroničkim uređajima.

Binarni zapis brojeva

U binarnom brojevnom sustavu brojevi se zapisuju pomoću dva znaka ( 0 I 1 ). Kako bi se izbjegla zabuna u kojem je brojevnom sustavu broj napisan, dolje desno je opremljen indikatorom. Na primjer, broj u decimalnom sustavu 5 10 , u binarnom obliku 101 2 . Ponekad se binarni broj označava prefiksom 0b ili simbol & (&), Na primjer 0b101 odnosno prema tome &101 .

U binarnom brojevnom sustavu (kao i u drugim brojevnim sustavima osim decimalnog), znamenke se čitaju jedna po jedna. Na primjer, broj 101 2 izgovara se "jedan nula jedan".

Cijeli brojevi

Prirodni broj zapisan u binarnom brojevnom sustavu kao (a n − 1 a n − 2 … a 1 a 0) 2 (\displaystyle (a_(n-1)a_(n-2)\točke a_(1)a_(0))_(2)), ima značenje:

(a n − 1 a n − 2 … a 1 a 0) 2 = ∑ k = 0 n − 1 a k 2 k , (\displaystyle (a_(n-1)a_(n-2)\točke a_(1)a_( 0))_(2)=\zbroj _(k=0)^(n-1)a_(k)2^(k),)

Negativni brojevi

Negativni binarni brojevi označavaju se na isti način kao i decimalni brojevi: znakom “–” ispred broja. Naime, negativan cijeli broj zapisan u binarnom brojevnom sustavu (− a n − 1 a n − 2 … a 1 a 0) 2 (\displaystyle (-a_(n-1)a_(n-2)\točke a_(1)a_(0))_(2)), ima vrijednost:

(− a n − 1 a n − 2 … a 1 a 0) 2 = − ∑ k = 0 n − 1 a k 2 k . (\displaystyle (-a_(n-1)a_(n-2)\točke a_(1)a_(0))_(2)=-\zbroj _(k=0)^(n-1)a_( k)2^(k).)

dodatni kod.

Razlomački brojevi

Razlomački broj zapisan u binarnom brojevnom sustavu kao (a n − 1 a n − 2 … a 1 a 0 , a − 1 a − 2 … a − (m − 1) a − m) 2 (\displaystyle (a_(n-1)a_(n-2)\točke a_(1)a_(0),a_(-1)a_(-2)\točke a_(-(m-1))a_(-m))_(2)), ima vrijednost:

(a n − 1 a n − 2 … a 1 a 0 , a − 1 a − 2 … a − (m − 1) a − m) 2 = ∑ k = − m n − 1 a k 2 k , (\displaystyle (a_( n-1)a_(n-2)\točke a_(1)a_(0),a_(-1)a_(-2)\točke a_(-(m-1))a_(-m))_( 2)=\zbroj _(k=-m)^(n-1)a_(k)2^(k),)

Zbrajanje, oduzimanje i množenje binarnih brojeva

Tablica zbrajanja

Primjer zbrajanja stupaca (decimalni izraz 14 10 + 5 10 = 19 10 u binarnom obliku izgleda kao 1110 2 + 101 2 = 10011 2):

Primjer množenja stupaca (decimalni izraz 14 10 * 5 10 = 70 10 u binarnom obliku izgleda kao 1110 2 * 101 2 = 1000110 2):

Počevši od broja 1, svi se brojevi množe s dva. Točka koja dolazi nakon 1 naziva se binarna točka.

Pretvaranje binarnih brojeva u decimalne

Recimo da nam je dan binarni broj 110001 2 . Za pretvaranje u decimale, zapišite je kao zbroj znamenkama na sljedeći način:

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

Ista stvar malo drugacije:

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

To možete napisati u obliku tablice ovako:

512 256 128 64 32 16 8 4 2 1
1 1 0 0 0 1
+32 +16 +0 +0 +0 +1

Pomaknite se s desna na lijevo. Ispod svake binarne jedinice napišite njezin ekvivalent u donjem redu. Zbrojite dobivene decimalne brojeve. Dakle, binarni broj 110001 2 je ekvivalentan decimalnom broju 49 10.

Pretvaranje frakcijskih binarnih brojeva u decimalne

Potrebno je pretvoriti broj 1011010,101 2 decimalnom sustavu. Zapišimo ovaj broj na sljedeći način:

1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 −1 + 0 * 2 −2 + 1 * 2 −3 = 90,625

Ista stvar malo drugacije:

1 * 64 + 0 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 + 1 * 0,5 + 0 * 0,25 + 1 * 0,125 = 90,625

Ili prema tablici:

64 32 16 8 4 2 1 0.5 0.25 0.125
1 0 1 1 0 1 0 , 1 0 1
+64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125

Transformacija po Hornerovoj metodi

Da biste ovom metodom pretvorili brojeve iz binarnih u decimalne, potrebno je zbrojiti brojeve slijeva na desno, množeći prethodno dobiveni rezultat bazom sustava (u ovom slučaju 2). Hornerova metoda obično se koristi za pretvorbu iz binarnog u decimalni sustav. Obrnuta operacija je teška, jer zahtijeva vještine zbrajanja i množenja u binarnom brojevnom sustavu.

Na primjer, binarni broj 1011011 2 pretvoren u decimalni sustav na sljedeći način:

0*2 + 1 = 1
1*2 + 0 = 2
2*2 + 1 = 5
5*2 + 1 = 11
11*2 + 0 = 22
22*2 + 1 = 45
45*2 + 1 = 91

To jest, u decimalnom sustavu ovaj će broj biti napisan kao 91.

Pretvaranje razlomačkog dijela brojeva Hornerovom metodom

Znamenke se uzimaju iz broja s desna na lijevo i dijele s bazom brojevnog sustava (2).

Na primjer 0,1101 2

(0 + 1 )/2 = 0,5
(0,5 + 0 )/2 = 0,25
(0,25 + 1 )/2 = 0,625
(0,625 + 1 )/2 = 0,8125

Odgovor: 0,1101 2 = 0,8125 10

Pretvaranje decimalnih brojeva u binarne

Recimo da trebamo pretvoriti broj 19 u binarni. Možete koristiti sljedeći postupak:

19/2 = 9 s ostatkom 1
9/2 = 4 s ostatkom 1
4/2 = 2 bez ostatka 0
2/2 = 1 bez ostatka 0
1/2 = 0 s ostatkom 1

Dakle, svaki kvocijent podijelimo s 2 i ostatak zapišemo na kraju binarnog zapisa. Dijeljenje nastavljamo dok kvocijent ne bude 0. Rezultat zapisujemo s desna na lijevo. To jest, donja znamenka (1) bit će krajnja lijeva, itd. Kao rezultat toga, dobivamo broj 19 u binarnom zapisu: 10011 .

Pretvaranje frakcijskih decimalnih brojeva u binarne

Ako izvorni broj ima cijeli dio, tada se pretvara odvojeno od razlomka. Pretvaranje frakcijskog broja iz decimalnog brojevnog sustava u binarni sustav provodi se pomoću sljedećeg algoritma:

  • Razlomak se množi s bazom binarnog brojevnog sustava (2);
  • U dobivenom umnošku izdvaja se cjelobrojni dio koji se uzima kao najznačajnija znamenka broja u binarnom brojevnom sustavu;
  • Algoritam završava ako je razlomački dio dobivenog umnoška jednak nuli ili ako je postignuta zahtijevana točnost izračuna. U suprotnom, izračuni se nastavljaju na frakcijskom dijelu proizvoda.

Primjer: trebate pretvoriti razlomački decimalni broj 206,116 na frakcijski binarni broj.

Translacija cijelog dijela daje 206 10 =11001110 2 prema prethodno opisanim algoritmima. Množimo razlomački dio od 0,116 s bazom 2, unoseći cjelobrojne dijelove umnoška u decimalna mjesta željenog razlomljenog binarnog broja:

0,116 2 = 0 ,232
0,232 2 = 0 ,464
0,464 2 = 0 ,928
0,928 2 = 1 ,856
0,856 2 = 1 ,712
0,712 2 = 1 ,424
0,424 2 = 0 ,848
0,848 2 = 1 ,696
0,696 2 = 1 ,392
0,392 2 = 0 ,784
itd.

Stoga je 0,116 10 ≈ 0, 0001110110 2

Dobivamo: 206.116 10 ≈ 11001110.0001110110 2

Prijave

U digitalnim uređajima

Binarni sustav koristi se u digitalnim uređajima jer je najjednostavniji i zadovoljava zahtjeve:

  • Što je manje vrijednosti u sustavu, to je lakše proizvesti pojedinačne elemente koji rade na tim vrijednostima. Konkretno, dvije znamenke binarnog brojevnog sustava mogu se lako predstaviti mnogim fizičkim pojavama: postoji struja (struja je veća od vrijednosti praga) - nema struje (struja je manja od vrijednosti praga), je li indukcija magnetskog polja veća od vrijednosti praga ili ne (indukcija magnetskog polja manja je od vrijednosti praga) itd.
  • Što manje stanja element ima, veća je otpornost na buku i brže može raditi. Na primjer, da biste kodirali tri stanja kroz veličinu napona, struje ili indukcije magnetskog polja, morat ćete uvesti dvije vrijednosti praga i dva komparatora.

U računalstvu se naširoko koristi pisanje negativnih binarnih brojeva u komplementu dva. Na primjer, broj −5 10 mogao bi se napisati kao −101 2, ali bi bio pohranjen kao 2 na 32-bitnom računalu.

U engleskom sustavu mjera

Pri označavanju linearnih dimenzija u inčima, tradicionalno se koriste binarni razlomci umjesto decimalnih, na primjer: 5¾″, 7 15/16″, 3 11/32″ itd.

Generalizacije

Binarni brojevni sustav kombinacija je binarnog sustava kodiranja i eksponencijalne težinske funkcije s bazom jednakom 2. Treba napomenuti da se broj može napisati u binarnom kodu, a brojevni sustav ne mora biti binarni, već s različita baza. Primjer: BCD kodiranje, u kojem su decimalne znamenke zapisane u binarnom obliku, a brojevni sustav je decimalni.

Priča

  • Kompletan skup od 8 trigrama i 64 heksagrama, analogan 3-bitnim i 6-bitnim brojevima, bio je poznat u drevnoj Kini u klasičnim tekstovima Knjige promjena. Redoslijed heksagrama u knjiga promjena, raspoređenih u skladu s vrijednostima odgovarajućih binarnih znamenki (od 0 do 63), a metodu za njihovo dobivanje razvio je kineski znanstvenik i filozof Shao Yong u 11. stoljeću. Međutim, nema dokaza koji bi sugerirali da je Shao Yun razumio pravila binarne aritmetike, slažući dvoznakovne torke u leksikografskom redu.
  • Skupove, koji su kombinacije binarnih znamenki, koristili su Afrikanci u tradicionalnom proricanju (kao što je Ifa) zajedno sa srednjovjekovnom geomantijom.
  • Godine 1854. engleski matematičar George Boole objavio je značajan rad u kojem je opisao algebarske sustave primijenjene na logiku, što je danas poznato kao Booleova algebra ili algebra logike. Njegovom logičkom računu bilo je suđeno da odigra važnu ulogu u razvoju modernih digitalnih elektroničkih sklopova.
  • Godine 1937. Claude Shannon predao je svoju doktorsku disertaciju na obranu. Simbolička analiza relejnih i sklopnih sklopova u kojem su korištene Booleova algebra i binarna aritmetika u odnosu na elektroničke releje i sklopke. Sva moderna digitalna tehnologija u biti se temelji na Shannonovoj disertaciji.
  • U studenom 1937. George Stibitz, koji je kasnije radio u Bell Labsu, stvorio je računalo "Model K" temeljeno na relejima. K itchen", kuhinja u kojoj je izvršena montaža), koja je izvodila binarno zbrajanje. Krajem 1938. Bell Labs pokrenuo je istraživački program koji je vodio Stiebitz. Računalo stvoreno pod njegovim vodstvom, dovršeno 8. siječnja 1940., moglo je izvoditi operacije s kompleksnim brojevima. Tijekom demonstracije na konferenciji Američkog matematičkog društva na Dartmouth Collegeu 11. rujna 1940. Stibitz je demonstrirao sposobnost slanja naredbi udaljenom kalkulatoru složenih brojeva preko telefonske linije pomoću stroja za teletip. Ovo je bio prvi pokušaj korištenja udaljenog računala putem telefonske linije. Sudionici konferencije koji su svjedočili demonstracijama bili su John von Neumann, John Mauchly i Norbert Wiener, koji su kasnije o tome pisali u svojim memoarima.

vidi također

Bilješke

  1. Popova Olga Vladimirovna. Udžbenik informatike (nedefiniran) .

Računala ne razumiju riječi i brojeve na način na koji ih ljudi razumiju. Moderni softver omogućuje krajnjem korisniku da to zanemari, ali na najnižim razinama vaše računalo radi na binarnom električnom signalu koji ima samo dva stanja: ima li struje ili nema. Da biste "razumjeli" složene podatke, vaše ih računalo mora kodirati u binarnom formatu.

Binarni sustav temelji se na dvije znamenke, 1 i 0, koje odgovaraju uključenim i isključenim stanjima koja vaše računalo može razumjeti. Vjerojatno ste upoznati s decimalnim sustavom. Koristi deset znamenki, od 0 do 9, a zatim prelazi na sljedeći redoslijed kako bi formirao dvoznamenkaste brojeve, pri čemu je svaki broj deset puta veći od prethodnog. Binarni sustav je sličan, pri čemu je svaka znamenka dvostruko veća od prethodne.

Brojanje u binarnom formatu

U binarnom izrazu, prva znamenka je ekvivalentna 1 u decimalnom sustavu. Druga znamenka je 2, treća je 4, četvrta je 8 i tako dalje - svaki put se udvostručuje. Zbrajanje svih ovih vrijednosti dat će vam broj u decimalnom formatu.

1111 (u binarnom) = 8 + 4 + 2 + 1 = 15 (u decimalnom)

Uračunavanje 0 daje nam 16 mogućih vrijednosti za četiri binarna bita. Pomaknite 8 bitova i dobit ćete 256 mogućih vrijednosti. Ovo zauzima puno više prostora za predstavljanje jer nam četiri decimalne znamenke daju 10 000 mogućih vrijednosti. Naravno, binarni kod zauzima više prostora, ali računala mnogo bolje razumiju binarne datoteke nego decimalni sustav. A za neke stvari, poput logičke obrade, binarni je bolji od decimalnog.

Treba reći da postoji još jedan osnovni sustav koji se koristi u programiranju: heksadecimalni. Iako računala ne rade u heksadecimalnom formatu, programeri ga koriste za predstavljanje binarnih adresa u formatu čitljivom za čovjeka prilikom pisanja koda. To je zato što dvije znamenke heksadecimalnog broja mogu predstavljati cijeli bajt, što znači da zamjenjuju osam znamenki u binarnom obliku. Heksadecimalni sustav koristi brojeve 0-9, kao i slova od A do F, za stvaranje dodatnih šest znamenki.

Zašto računala koriste binarne datoteke?

Kratak odgovor: hardver i zakoni fizike. Svaki znak u vašem računalu električni je signal, a u ranim danima računalstva mjerenje električnih signala bilo je mnogo teže. Imalo je više smisla razlikovati samo "uključeno" stanje, predstavljeno negativnim nabojem, i "isključeno" stanje, predstavljeno pozitivnim nabojem.

Za one koji ne znaju zašto je "isključeno" predstavljeno pozitivnim nabojem, to je zato što elektroni imaju negativan naboj, a više elektrona znači veću struju s negativnim nabojem.

Stoga su se rano koristila računala veličine sobe binarne datoteke kako bi stvorili svoje sustave, i iako su koristili stariju, glomazniju opremu, radili su na istim temeljnim principima. Moderna računala koriste tzv tranzistor za izvođenje izračuna s binarnim kodom.

Evo dijagrama tipičnog tranzistora:

U biti, omogućuje protok struje od izvora do odvoda ako postoji struja u gejtu. Time se formira binarni ključ. Proizvođači mogu napraviti ove tranzistore nevjerojatno male - do 5 nanometara, ili veličine dva lanca DNK. Ovako rade moderni procesori, pa čak i oni mogu patiti od problema s razlikovanjem između uključenih i isključenih stanja (iako je to zbog njihove nerealne molekularne veličine koja je podložna čudnovatost kvantne mehanike).

Zašto samo binarni sustav

Pa možda mislite: "Zašto samo 0 i 1? Zašto ne dodati još jedan broj? Iako je to djelomično zbog tradicije stvaranja računala, u isto vrijeme dodavanje druge znamenke značilo bi potrebu razlikovati drugo stanje struje, a ne samo "isključeno" ili "uključeno".

Ovdje je problem u tome što ako želite koristiti više naponskih razina, trebate način za jednostavno izvođenje izračuna na njima, a trenutni hardver koji je sposoban za to nije održiv kao zamjena za binarne izračune. Na primjer, postoji tzv trostruko računalo, razvijen 1950-ih, ali je razvoj tu stao. Ternarna logika učinkovitiji od binarnog, ali još uvijek ne postoji učinkovita zamjena za binarni tranzistor, ili barem ne postoji tranzistor na istoj sićušnoj skali kao binarni.

Razlog zašto ne možemo koristiti ternarnu logiku svodi se na to kako su tranzistori povezani u računalu i kako se koriste za matematičke izračune. Tranzistor prima informacije na dva ulaza, izvodi operaciju i vraća rezultat na jedan izlaz.

Dakle, binarna matematika je lakša za računalo nego bilo što drugo. Binarna logika lako se pretvara u binarne sustave, pri čemu True i False odgovaraju uključenim i isključenim stanjima.

Binarna tablica istine koja radi na binarnoj logici imat će četiri moguća izlaza za svaku temeljnu operaciju. Ali budući da trostruka vrata koriste tri ulaza, trostruka tablica istine imala bi 9 ili više. Dok binarni sustav ima 16 mogućih operatora (2^2^2), ternarni sustav bi imao 19683 (3^3^3). Skaliranje postaje problem jer iako je trinity učinkovitiji, također je eksponencijalno složeniji.

Tko zna? U budućnosti bismo mogli vidjeti ternarna računala jer se binarna logika suočava s izazovima minijaturizacije. Za sada će svijet nastaviti funkcionirati u binarnom načinu rada.