Cum se convertesc la sistemul 2. Numere binare, cifre și sistemul de numere binar. Conversia unui număr în binar din zecimal

Să ne uităm la unul dintre cele mai importante subiecte din informatică -. În programa școlară, se dezvăluie mai degrabă „modest”, cel mai probabil din cauza lipsei de ore alocate acestuia. Cunoștințe pe această temă, în special pe traducerea sistemelor numerice, sunt o condiție prealabilă pentru promovarea cu succes a Examenului de stat unificat și admiterea la universități din facultățile relevante. Mai jos discutăm în detaliu concepte precum sisteme de numere poziționale și nepoziționale, sunt date exemple ale acestor sisteme de numere, sunt prezentate reguli pentru conversia numerelor zecimale întregi, fracțiilor zecimale adecvate și numerelor zecimale mixte în orice alt sistem de numere, conversia numerelor din orice sistem de numere în zecimal, conversia din sistemele de numere octale și hexazecimale în numere binar sistem. Există o mulțime de probleme pe această temă la examene. Capacitatea de a le rezolva este una dintre cerințele solicitanților. În curând: pentru fiecare subiect al secțiunii, pe lângă materialul teoretic detaliat, vor fi prezentate aproape toate opțiunile posibile sarcini pentru auto-studiu. În plus, veți avea posibilitatea de a descărca complet gratuit de la un serviciu de găzduire de fișiere soluții detaliate gata făcute la aceste probleme, ilustrând diverse modalități de a obține răspunsul corect.

sisteme de numere poziționale.

Sisteme numerice non-poziționale- sisteme de numere în care valoarea cantitativă a unei cifre nu depinde de localizarea acesteia în număr.

Sistemele numerice non-poziționale includ, de exemplu, romanul, unde în loc de numere există litere latine.

eu 1 (unu)
V 5 (cinci)
X 10 (zece)
L 50 (cincizeci)
C 100 (o sută)
D 500 (cinci sute)
M 1000 (mii)

Aici litera V reprezintă 5, indiferent de locația sa. Cu toate acestea, merită menționat faptul că, deși sistemul numeric roman este un exemplu clasic de sistem de numere non-pozițional, acesta nu este complet non-pozițional, deoarece Din acesta se scade numărul mai mic din fața celui mai mare:

IL 49 (50-1=49)
VI 6 (5+1=6)
XXI 21 (10+10+1=21)
MI 1001 (1000+1=1001)

sisteme de numere poziționale.

Sisteme numerice poziționale- sisteme de numere în care valoarea cantitativă a unei cifre depinde de localizarea acesteia în număr.

De exemplu, dacă vorbim despre sistemul numeric zecimal, atunci în numărul 700 numărul 7 înseamnă „șapte sute”, dar același număr din numărul 71 înseamnă „șapte zeci”, iar în numărul 7020 - „șapte mii” .

Fiecare sistem de numere poziționale are propriile sale baza. Un număr natural mai mare sau egal cu doi este ales ca bază. Este egal cu numărul de cifre utilizate într-un anumit sistem numeric.

    De exemplu:
  • Binar- sistem de numere poziționale cu baza 2.
  • Cuaternar- sistem de numere pozițional cu baza 4.
  • De cinci ori- sistem de numere pozițional cu baza 5.
  • Octal- sistem de numere pozițional cu baza 8.
  • hexazecimal- sistem de numere pozițional cu baza 16.

Pentru a rezolva cu succes probleme la tema „Sisteme numerice”, elevul trebuie să cunoască pe de rost corespondența numerelor binare, zecimale, octale și hexazecimale până la 16 10:

10 s/s 2 s/s 8 s/s 16 s/s
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 O
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10

Este util să știm cum se obțin numerele în aceste sisteme numerice. Puteți ghici că în octal, hexazecimal, ternar și altele sisteme de numere poziționale totul se întâmplă în același mod ca sistemul zecimal cu care suntem obișnuiți:

Se adaugă unul la număr și se obține un nou număr. Dacă locul unităților devine egal cu baza sistemului numeric, creștem numărul zecilor cu 1 etc.

Această „tranziție a unuia” este ceea ce îi sperie pe majoritatea studenților. De fapt, totul este destul de simplu. Tranziția are loc dacă cifra unităților devine egală cu baza numerelor, creștem numărul zecilor cu 1. Mulți, amintindu-și vechiul sistem zecimal bun, sunt instantaneu confuzi cu privire la cifrele din această tranziție, deoarece zecimale și, de exemplu, zecile binare sunt lucruri diferite.

De aici, studenții cu resurse își dezvoltă „propriile metode” (în mod surprinzător... lucrând) atunci când completează, de exemplu, tabele de adevăr, primele coloane (valori variabile) ale căror, de fapt, sunt umplute cu numere binare în ordine crescătoare.

De exemplu, să ne uităm la introducerea numerelor sistem octal: Adăugăm 1 la primul număr (0), obținem 1. Apoi adăugăm 1 la 1, obținem 2 etc. la 7. Dacă adunăm unu la 7, obținem un număr egal cu baza sistemului numeric, adică. 8. Apoi trebuie să măriți cifra zecilor cu una (obținem zece octal - 10). Urmează, evident, numerele 11, 12, 13, 14, 15, 16, 17, 20, ..., 27, 30, ..., 77, 100, 101...

Reguli pentru conversia de la un sistem numeric la altul.

1 Conversia numerelor zecimale întregi în orice alt sistem de numere.

Numărul trebuie împărțit la noua bază a sistemului de numere. Primul rest al diviziunii este prima cifră minoră a noului număr. Dacă câtul împărțirii este mai mic sau egal cu noua bază, atunci acesta (coeficientul) trebuie împărțit din nou la noua bază. Împărțirea trebuie continuată până când obținem un coeficient mai mic decât noua bază. Aceasta este cea mai mare cifră a noului număr (trebuie să vă amintiți că, de exemplu, în sistemul hexazecimal, după 9 există litere, adică dacă restul este 11, trebuie să îl scrieți ca B).

Exemplu („împărțire după colț”): Să transformăm numărul 173 10 în sistemul numeric octal.


Astfel, 173 10 =255 8

2 Conversia fracțiilor zecimale regulate în orice alt sistem numeric.

Numărul trebuie înmulțit cu noul sistem de numere de bază. Cifra care a devenit parte întreagă este cea mai mare cifră a părții fracționale a noului număr. pentru a obține următoarea cifră, partea fracțională a produsului rezultat trebuie din nou înmulțită cu o nouă bază a sistemului numeric până când are loc tranziția la întreaga parte. Continuăm înmulțirea până când partea fracțională devine zero sau până când ajungem la precizia specificată în problemă („... calculați cu o precizie de, de exemplu, două zecimale”).

Exemplu: Să transformăm numărul 0,65625 10 în sistemul de numere octale.

Pentru a converti numere din s/s zecimal în oricare altul, trebuie să împărțiți numărul zecimal la baza sistemului la care faceți conversia, păstrând în același timp restul din fiecare diviziune. Rezultatul este generat de la dreapta la stânga. Împărțirea continuă până când rezultatul împărțirii este mai mic decât divizorul.

Calculatorul convertește numerele dintr-un sistem numeric în oricare altul. Poate converti numere din binar în zecimal sau zecimal în hexazecimal, arătând progresul detaliat al soluției. Puteți converti cu ușurință un număr din ternar în quinar sau chiar din septenar în al șaptesprezecelea. Calculatorul poate converti numere din orice sistem numeric în oricare altul.

Calculator online: convertiți numere dintr-un sistem numeric în oricare altul online

Date de intrare

Introduceți numărul:


Sistemul său de numere
Binar
Treime
Octal
Zecimal
hexazecimal
Decimală binară
Alte

Prin triade
Prin caiete

Care? (număr)


Convertiți în
Binar
Treime
Octal
Zecimal
hexazecimal
zecimală binară
Altul

Care? (număr)

Metode de conversie a numerelor dintr-un sistem numeric în altul

La program Examen de stat unificat în informatică include mai multe sarcini legate de conversia numerelor dintr-un sistem în altul. De obicei, aceasta este o conversie între sistemele octal și hexazecimal și binar. Acestea sunt secțiunile A1, B11. Dar există și probleme cu alte sisteme de numere, cum ar fi în secțiune B7.

Pentru început, să ne amintim două tabele pe care ar fi bine să le cunoaștem pe de rost pentru cei care aleg informatica ca profesie viitoare.

Tabelul puterilor numărului 2:

2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10
2 4 8 16 32 64 128 256 512 1024

Se obține ușor prin înmulțirea numărului anterior cu 2. Deci, dacă nu vă amintiți toate aceste numere, nu este dificil să aveți restul în minte de la cele pe care le amintiți.

Tabel de numere binare de la 0 la 15 cu reprezentare hexazecimală:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0 1 2 3 4 5 6 7 8 9 O B C D E F

Valorile lipsă sunt, de asemenea, ușor de calculat adăugând 1 la valorile cunoscute.

Operații aritmetice în sistemul numeric binar

Când sunt adăugate două numere egale cu 1, rezultatul din această cifră este 0, iar 1 este transferat la cea mai mare cifră.

Conversie intreg

Deci, să începem prin a converti direct în sistemul binar. Să luăm același număr 810 10. Trebuie să descompunăm acest număr în termeni egali cu puterile a doi.
  1. Căutăm puterea celor două cele mai apropiate de 810 și să nu o depășească. Acesta este 2 9 = 512.
  2. Scădeți 512 din 810, obținem 298.
  3. Repetați pașii 1 și 2 până când nu mai sunt 1 sau 0.
  4. Am prins asa: 810 = 512 + 256 + 32 + 8 + 2 = 2 9 + 2 8 + 2 5 + 2 3 + 2 1 .
Apoi, există două metode, puteți utiliza oricare dintre ele. Cât de ușor este să vezi că în orice sistem numeric baza lui este întotdeauna 10. Pătratul bazei va fi întotdeauna 100, cubul 1000. Adică, gradul bazei sistemului numeric este 1 (unul), iar în spatele lui există tot atâtea zerouri cât gradul.

Metoda 1: Aranjați 1 în funcție de rangurile indicatorilor termenilor. În exemplul nostru, acestea sunt 9, 8, 5, 3 și 1. Locurile rămase vor conține zerouri. Deci, am obținut reprezentarea binară a numărului 810 10 = 1100101010 2. Unitățile sunt plasate pe locurile 9, 8, 5, 3 și 1, numărând de la dreapta la stânga de la zero.

Metoda 2: Să scriem termenii ca puteri a doi unul sub celălalt, începând cu cel mai mare.

810 =

Acum să adăugăm acești pași împreună, cum ar fi plierea unui evantai: 1100101010.

Asta este. În același timp, problema „câte unități sunt în reprezentarea binară a numărului 810?” este de asemenea rezolvată.

Răspunsul este atâția termeni (puteri a doi) în această reprezentare. 810 are 5 dintre ele.

Acum exemplul este mai simplu.

Să transformăm numărul 63 în sistemul numeric 5-ari. Cea mai apropiată putere de la 5 la 63 este 25 (pătratul 5). Un cub (125) va fi deja mult. Adică 63 se află între pătratul lui 5 și cub. Apoi vom selecta coeficientul pentru 5 2. Acesta este 2.

Se obține 63 10 = 50 + 13 = 50 + 10 + 3 = 2 * 5 2 + 2 * 5 + 3 = 223 5.

Și, în sfârșit, traduceri foarte ușoare între sistemele 8 și hexazecimale. Deoarece baza lor este o putere de doi, traducerea se face automat, pur și simplu prin înlocuirea numerelor cu reprezentarea lor binară. Pentru sistemul octal, fiecare cifră este înlocuită cu trei cifre binare, iar pentru sistemul hexazecimal, patru. În acest caz, sunt necesare toate zerourile înainte, cu excepția cifrei celei mai semnificative.

Să convertim numărul 547 8 în binar.

547 8 = 101 100 111
5 4 7

Încă unul, de exemplu 7D6A 16.

7D6A 16 = (0)111 1101 0110 1010
7 D 6 O

Să convertim numărul 7368 în sistemul hexazecimal. Mai întâi, scrieți numerele în triplete, apoi împărțiți-le în cvadruple de la sfârșit: 736 8 = 111 011 110 = 1 1101 1110 = 1DE 16. Să convertim numărul C25 16 în sistemul octal. Mai întâi, scriem numerele în patru și apoi le împărțim în trei de la sfârșit: C25 16 = 1100 0010 0101 = 110 000 100 101 = 6045 8. Acum să ne uităm la conversia înapoi în zecimală. Nu este dificil, principalul lucru este să nu faci greșeli în calcule. Extindem numărul într-un polinom cu puteri ale bazei și coeficienți pentru ei. Apoi înmulțim și adăugăm totul. E68 16 = 14 * 16 2 + 6 * 16 + 8 = 3688. 732 8 = 7 * 8 2 + 3*8 + 2 = 474 .

Conversia numerelor negative

Aici trebuie să țineți cont de faptul că numărul va fi prezentat în codul de complement a doi. Pentru a converti un număr în cod suplimentar, trebuie să știți dimensiunea finală a numărului, adică în ce dorim să-l încadram - într-un octet, în doi octeți, în patru. Cea mai semnificativă cifră a unui număr înseamnă semnul. Dacă există 0, atunci numărul este pozitiv, dacă 1, atunci este negativ. În stânga, numărul este completat cu o cifră semn. Nesemnat ( nesemnat ) nu luăm în considerare numerele, acestea sunt întotdeauna pozitive, iar cifra cea mai semnificativă din ele este folosită ca informație.

Pentru a converti un număr negativ în complement binar, trebuie să convertiți un număr pozitiv în binar, apoi schimbați zerourile în unu și cele în zerouri. Apoi adăugați 1 la rezultat.

Deci, să convertim numărul -79 în sistemul binar. Numărul ne va lua un octet.

Transformând 79 în binar, 79 = 1001111. Să adăugăm zerouri în stânga la o dimensiune de octet de 8 biți, obținem 01001111. Schimbăm 1 cu 0 și 0 cu 1. Primim 10110000. Adăugăm 1 la rezultat, obținem răspunsul 10110001.

Pe parcurs, răspundem la întrebarea Examenului de stat unificat „ câte unități există în reprezentarea binară a numărului -79?».

Raspunsul este 4.

Adăugarea a 1 la inversul unui număr elimină diferența dintre reprezentările +0 = 00000000 și -0 = 11111111. În cod suplimentar vor fi scrise la fel: 00000000.

Conversia numerelor fracționale

Numerele fracționale sunt convertite în modul invers al împărțirii numerelor întregi la bază, ceea ce ne-am uitat chiar de la început. Adică, folosind înmulțirea secvențială cu o nouă bază cu colecția de părți întregi. Părțile întregi obținute în timpul înmulțirii sunt colectate, dar nu participă la următoarele operații. Se înmulțesc doar fracțiile. Dacă numărul inițial este mai mare decât 1, atunci părțile întregi și fracționale sunt translatate separat și apoi lipite împreună.

Să transformăm numărul 0,6752 în sistemul binar.

0 ,6752
*2
1 ,3504
*2
0 ,7008
*2
1 ,4016
*2
0 ,8032
*2
1 ,6064
*2
1 ,2128

Procesul poate fi continuat mult timp până când obținem toate zerourile din partea fracțională sau se obține precizia necesară. Să ne oprim la al 6-lea semn deocamdată.

Se dovedește că 0,6752 = 0,101011.

Dacă numărul a fost 5,6752, atunci în binar va fi 101,101011.

Javascript este dezactivat în browserul dvs.
Pentru a efectua calcule, trebuie să activați controalele ActiveX!

Bună ziua, vizitator al site-ului! Continuăm să studiem protocolul de nivel de rețea IP și, pentru a fi mai precis, versiunea sa IPv4. La prima vedere subiectul numere binare și sistem de numere binar nu are nimic de-a face cu protocolul IP, dar dacă ne amintim că computerele funcționează cu zerouri și cu unu, atunci se dovedește că sistemul binar și înțelegerea lui stă la baza elementelor de bază, avem nevoie Învățați să convertiți numerele din binar în zecimal si invers: zecimal în binar. Acest lucru ne va ajuta să înțelegem mai bine protocolul IP, precum și principiul de funcționare a măștilor de rețea cu lungime variabilă. Să începem!

Dacă subiectul rețelelor de calculatoare vă interesează, puteți citi și alte înregistrări de curs.

4.4.1 Introducere

Înainte de a începe, merită să explicăm de ce un inginer de rețea are nevoie de acest subiect. Deși te-ai putea convinge de necesitatea ei când am vorbit, poți spune că există calculatoare de IP care facilitează foarte mult sarcina de alocare a adreselor IP, de calculare a măștilor de subrețea/rețea necesare și de a determina numărul rețelei și numărul gazdei în adresa IP. Așa este, dar calculatorul IP nu este întotdeauna la îndemână, acesta este motivul numărul unu. Motivul numărul doi este că la examenele Cisco nu vă vor da un calculator IP și atât. va trebui să faceți conversia adreselor IP din zecimal în binar pe o bucată de hârtie, și nu sunt atât de puține întrebări la care acest lucru se cere la examenul/examenele pentru obținerea certificatului CCNA, ar fi păcat dacă examenul ar fi picat din cauza unui asemenea fleac. Și, în sfârșit, înțelegerea sistemului de numere binar duce la o mai bună înțelegere a principiului de funcționare.

În general, un inginer de rețea nu este obligat să poată converti numerele din binar în zecimal și invers în capul său. Mai mult decât atât, rar cineva știe cum să facă acest lucru mental, profesorii diferitelor cursuri pe rețele de calculatoare se încadrează în principal în această categorie, deoarece se confruntă în mod constant cu asta în fiecare zi. Dar cu o bucată de hârtie și un pix, ar trebui să înveți cum să traduci.

4.4.2 Cifre zecimale și numere, cifre în numere

Să începem simplu și să vorbim despre cifre și numere binare, știi că numerele și numerele sunt două lucruri diferite. Un număr este un simbol special pentru desemnare, iar un număr este o notație abstractă pentru cantitate. De exemplu, pentru a scrie că avem cinci degete pe mână, putem folosi cifre romane și arabe: V și 5. În acest caz, cinci este atât un număr, cât și o cifră. Și, de exemplu, pentru a scrie numărul 20 folosim două cifre: 2 și 0.

În total, în sistemul numeric zecimal avem zece cifre sau zece simboluri (0,1,2,3,4,5,6,7,8,9), prin combinarea cărora putem scrie diferite numere. După ce principiu ne ghidăm atunci când folosim sistemul numeric zecimal? Da, totul este foarte simplu, ridicăm zece la un grad sau altul, de exemplu, să luăm numărul 321. Cum se poate scrie altfel, așa: 3*10 2 +2*10 1 +1*10 0 . Astfel, se dovedește că numărul 321 reprezintă trei cifre:

  1. Cifra 3 înseamnă locul cel mai semnificativ sau în acest caz este locul sutelor, altfel numărul lor.
  2. Numărul 2 este pe locul zecilor, avem două zeci.
  3. Numărul unu se referă la cifra cea mai puțin semnificativă.

Adică, în această intrare un doi nu este doar un doi, ci două zeci sau două ori zece. Și trei nu înseamnă doar trei, ci de trei ori o sută. Se obține următoarea dependență: unitatea fiecărei cifre următoare este de zece ori mai mare decât unitatea celei anterioare, deoarece ceea ce este 300 este de trei ori o sută. A fost necesară o digresiune privind sistemul numeric zecimal pentru a facilita înțelegerea sistemului binar.

4.4.3 Cifre și numere binare, precum și înregistrarea acestora

Există doar două cifre în sistemul de numere binar: 0 și 1. Prin urmare, scrierea unui număr în sistemul binar este adesea mult mai mare decât în ​​sistemul zecimal. Cu excepția numerelor 0 și 1, zero în sistemul numeric binar este egal cu zero în sistemul numeric zecimal și același lucru este valabil și pentru unu. Uneori, pentru a nu confunda în ce sistem numeric este scris numărul, se folosesc subindici: 267 10, 10100 12, 4712 8. Numărul din subindex indică sistemul de numere.

Simbolurile 0b și &(ampersand) pot fi folosite pentru a scrie numere binare: 0b10111, &111. Dacă în sistemul numeric zecimal, pentru a pronunța numărul 245 folosim această construcție: două sute patruzeci și cinci, atunci în sistemul numeric binar, pentru a numi numărul, trebuie să pronunțăm o cifră din fiecare cifră, de exemplu, numărul 1100 în sistemul numeric binar nu trebuie pronunțat ca o mie o sută, ci ca unu, unu, zero, zero. Să ne uităm la scrierea numerelor de la 0 la 10 în sistemul de numere binar:

Cred că logica ar trebui să fie clară până acum. Dacă în sistemul numeric zecimal pentru fiecare cifră aveam zece opțiuni disponibile (de la 0 la 9 inclusiv), atunci în sistemul numeric binar în fiecare dintre cifrele unui număr binar avem doar două opțiuni: 0 sau 1.

Pentru a lucra cu adrese IP și măști de subrețea, avem nevoie doar de numere naturale în sistemul de numere binar, deși sistemul binar ne permite să scriem numere fracționale și negative, dar nu avem nevoie de acest lucru.

4.4.4 Conversia numerelor din zecimal în binar

Să ne uităm mai bine la asta Cum se transformă un număr din zecimal în binar. Și aici totul este de fapt foarte, foarte simplu, deși este dificil de explicat în cuvinte, așa că o voi da imediat exemplu de conversie a numerelor din zecimal în binar. Să luăm numărul 61, pentru a converti în binar, trebuie să împărțim acest număr la doi și să vedem care este restul diviziunii. Și rezultatul împărțirii este din nou împărțit la doi. În acest caz, 61 este dividendul, vom avea întotdeauna doi ca divizor și împărțim din nou câtul (rezultatul împărțirii) la doi, continuăm împărțirea până când coeficientul conține 1, această ultimă unitate va fi cifra din stânga . Imaginea de mai jos demonstrează acest lucru.

Vă rugăm să rețineți că numărul 61 nu este 101111, ci 111101, adică scriem rezultatul de la sfârșit. În acest din urmă, nu are sens să împărțim unitatea la două, deoarece în acest caz se folosește diviziunea întregi, iar cu această abordare se dovedește ca în Figura 4.4.2.

Aceasta nu este cea mai rapidă modalitate de a converti un număr din binar în zecimal.. Avem mai multe acceleratoare. De exemplu, numărul 7 în binar este scris ca 111, numărul 3 ca 11, iar numărul 255 ca 11111111. Toate aceste cazuri sunt incredibil de simple. Faptul este că numerele 8, 4 și 256 sunt puteri a doi, iar numerele 7, 3 și 255 sunt cu unul mai puțin decât aceste numere. Deci, pentru numerele care sunt cu unu mai puțin decât un număr egal cu o putere a doi, se aplică o regulă simplă: în sistemul binar, un astfel de număr zecimal este scris ca un număr de unități egal cu o putere a două. Deci, de exemplu, numărul 256 este doi la a opta putere, prin urmare, 255 este scris ca 11111111, iar numărul 8 este doi la a treia putere, iar acest lucru ne spune că 7 în sistemul numeric binar va fi scris ca 111 . Ei bine, înțelegeți, cum să scrieți 256, 4 și 8 în sistemul de numere binar, nu este dificil, adăugați doar unul: 256 = 11111111 + 1 = 100000000; 8 = 111 + 1 = 1000; 4 = 11 + 1 = 100.
Puteți verifica oricare dintre rezultatele dvs. pe un calculator și este mai bine să faceți acest lucru la început.

După cum puteți vedea, încă nu am uitat cum să împărțim. Și acum putem merge mai departe.

4.4.5 Conversia numerelor din binar în zecimal

Conversia numerelor din binar este mult mai ușoară decât conversia din zecimal în binar. Ca exemplu de traducere, vom folosi numărul 11110. Fiți atenți la tabelul de mai jos, acesta arată puterea la care trebuie să ridicați doi pentru a obține în cele din urmă un număr zecimal.

Pentru a obține un număr zecimal din acest număr binar, trebuie să înmulțiți fiecare număr din cifră cu două la putere, apoi să adăugați rezultatele înmulțirii, este mai ușor de arătat:

1*2 4 +1*2 3 +1*2 2 +1*2 1 +0*2 0 = 16+8+4+2+0=30

Să deschidem calculatorul și să ne asigurăm că 30 în sistemul numeric zecimal este 11110 în binar.

Vedem că totul a fost făcut corect. Din exemplu reiese clar că Convertirea unui număr din binar în zecimal este mult mai ușoară decât convertirea lui înapoi. Pentru a lucra cu încredere, trebuie doar să vă amintiți puterile de la doi până la 2 8. Pentru claritate, voi oferi un tabel.

Nu avem nevoie de mai mult, deoarece numărul maxim posibil care poate fi scris într-un octet (8 biți sau opt valori binare) este 255, adică în fiecare octet al adresei IP sau al măștii de subrețea IPv4, valoarea maximă posibilă este 255. Există câmpuri , în care există valori mai mari decât 255, dar nu trebuie să le calculăm.

4.4.6 Adunarea, scăderea, înmulțirea numerelor binare și alte operații cu numere binare

Să ne uităm acum la operații care pot fi efectuate pe numere binare. Să începem cu operații aritmetice simple și apoi să trecem la operații de algebră booleană.

Adăugarea numerelor binare

Adăugarea numerelor binare nu este atât de dificilă: 1+0 =1; 1+1=0 (voi da o explicație mai târziu); 0+0=0. Acestea au fost exemple simple în care a fost folosită o singură cifră, să ne uităm la exemple în care numărul de cifre este mai mare de una.
101+1101 în sistemul zecimal este 5 + 13 = 18. Să numărăm într-o coloană.

Rezultatul este evidențiat în portocaliu, calculatorul spune că am calculat corect, îl puteți verifica. Acum să vedem de ce s-a întâmplat asta, pentru că la început am scris că 1+1=0, dar asta este pentru cazul când avem o singură cifră, pentru cazurile când sunt mai multe cifre, 1+1=10 (sau două în zecimală), ceea ce este logic.

Apoi uite ce se întâmplă, efectuăm adunări cu cifre de la dreapta la stânga:

1. 1+1=10, scrieți zero și unul trece la următoarea cifră.

2. În următoarea cifră obținem 0+0+1=1 (această unitate ne-a venit din rezultatul adunării din pasul 1).

4. Aici avem o unitate doar în al doilea număr, dar a fost transferată și aici, deci 0+1+1 = 10.

5. Lipiți totul împreună: 10|0|1|0.

Dacă ești leneș într-o coloană, atunci hai să numărăm așa: 101011+11011 sau 43 + 27 = 70. Ce putem face aici, dar să ne uităm, pentru că nimeni nu ne interzice să facem transformări și să schimbăm locurile termenii nu modifică suma, pentru sistemul de numere binar această regulă este de asemenea relevantă.

  1. 101011 = 101000 + 11 = 101000 + 10 + 1 = 100000 + 1000 + 10 + 1.
  2. 11011 = 11000 + 10 + 1 = 10000 + 1000 + 10 + 1.
  3. 100000 + 10000 + (1000 +1000) + (10+10) + (1+1).
  4. 100000 + (10000 + 10000) + 100 + 10.
  5. 100000 + 100000 +110
  6. 1000000 + 110.
  7. 1000110.

Puteți verifica cu un calculator, 1000110 în binar este 70 în zecimală.

Scăderea numerelor binare

Imediat un exemplu pentru scăderea numerelor cu o singură cifră în sistemul de numere binar, nu am vorbit despre numere negative, așa că nu ținem cont de 0-1: 1 – 0 = 1; 0 – 0 = 0; 1 – 1 = 0. Dacă există mai multe cifre, atunci totul este și simplu, nici măcar nu aveți nevoie de coloane sau trucuri: 110111 – 1000, aceasta este la fel cu 55 – 8. Ca rezultat, obținem 101111. Și inima a încetat să mai bată, de unde provine unitatea din a treia cifră (numerotarea de la stânga la dreapta și începând de la zero)? Este simplu! În a doua cifră a numărului 110111 există 0, iar în prima cifră este 1 (dacă presupunem că numerotarea cifrelor începe de la 0 și merge de la stânga la dreapta), dar unitatea celei de-a patra cifre se obține prin adunând două unități din a treia cifră (se obține un fel de două virtuale) și din aceasta Pentru doi, scădem una, care se află în cifra zero a numărului 1000, iar 2 - 1 = 1, iar 1 este o cifră validă în sistemul de numere binar.

Înmulțirea numerelor binare

Rămâne să luăm în considerare înmulțirea numerelor binare, care este implementată prin deplasarea cu un bit la stânga. Dar mai întâi, să ne uităm la rezultatele înmulțirii cu o singură cifră: 1*1 = 1; 1*0=0 0*0=0. De fapt, totul este simplu, acum să ne uităm la ceva mai complex. Să luăm numerele 101001 (41) și 1100 (12). Vom înmulți cu coloană.

Dacă nu este clar din tabel cum s-a întâmplat acest lucru, atunci voi încerca să explic în cuvinte:

  1. Este convenabil să înmulțim numere binare într-o coloană, așa că scriem al doilea factor sub primul, dacă numerele au numere diferite de cifre, va fi mai convenabil dacă numărul mai mare este deasupra.
  2. Următorul pas este să înmulțiți toate cifrele primului număr cu cea mai mică cifră a celui de-al doilea număr. Mai jos scriem rezultatul înmulțirii, astfel încât sub fiecare cifră corespunzătoare să fie scris rezultatul înmulțirii.
  3. Acum trebuie să înmulțim toate cifrele primului număr cu următoarea cifră a celui de-al doilea număr și să scriem rezultatul încă o linie mai jos, dar acest rezultat trebuie mutat cu o cifră la stânga, dacă te uiți la tabel; este a doua secvență de zerouri de sus.
  4. Același lucru trebuie făcut și pentru cifrele ulterioare, de fiecare dată mutând o cifră la stânga, iar dacă te uiți la tabel, poți spune că o celulă la stânga.
  5. Avem patru numere binare pe care acum trebuie să le adunăm și să obținem rezultatul. Ne-am uitat recent la adaos, nu ar trebui să fie probleme.

În general, operația de înmulțire nu este atât de dificilă, trebuie doar puțină practică.

Operații de algebră booleană

Există două concepte foarte importante în algebra booleană: adevărat și fals, al căror echivalent este zero și unu în sistemul numeric binar. Operatorii de algebră booleană extind numărul de operatori disponibili peste aceste valori, haideți să le aruncăm o privire.

Operație logică AND sau AND

Operația logică AND sau AND este echivalentă cu înmulțirea numerelor binare cu o singură cifră.

1 ȘI 1 = 1; 1 ȘI 0 = 1; 0 ȘI 0 = 0; 0 ȘI 1 = 0.

1 ȘI 1 = 1 ;

1 ȘI 0 = 1 ;

0 ȘI 0 = 0 ;

0 ȘI 1 = 0.

Rezultatul „ȘI logic” va fi unul numai dacă ambele valori sunt egale cu unul, în toate celelalte cazuri, va fi zero.

Operațiunea „SAU logic” sau SAU

Operația „SAU logic” sau SAU funcționează pe următorul principiu: dacă cel puțin o valoare este egală cu una, atunci rezultatul va fi unul.

1 SAU 1 = 1; 1 SAU 0 = 1; 0 SAU 1 = 1; 0 SAU 0 = 0.

1 SAU 1 = 1;

1 SAU 0 = 1;

0 SAU 1 = 1;

0 SAU 0 = 0.

Operație exclusivă OR sau XOR

Operația „SAU exclusiv” sau XOR ne va da un rezultat de unu numai dacă unul dintre operanzi este egal cu unu și al doilea este egal cu zero. Dacă ambii operanzi sunt egali cu zero, rezultatul va fi zero și chiar dacă ambii operanzi sunt egali cu unu, rezultatul va fi zero.