Cum se convertește din sistemul ternar în zecimal. Sisteme numerice. Transfer de la un sistem la altul

Cel mai scurt sistem numeric este binar. Ea este complet bazată pe formă pozițională inregistrarea numerelor. Caracteristica principală este principiul dublarea cifrelor atunci când se efectuează o trecere de la o anumită poziție la următoarea. Puteți converti de la un sistem numeric la altul fie folosind un program special, fie manual.

In contact cu

Recunoaștere istorică

Apariția SS binar în istorie este asociată cu omul de știință matematicianul V.G. Leibniz. El a fost primul care a vorbit despre regulile de efectuare a operațiunilor cu valori numerice de acest fel. Dar inițial acest principiu a rămas nerevendicat. Algoritmul a primit recunoaștere și aplicare la nivel mondial în zorii computerelor.

Comoditate și simplitate efectuarea de operații a dus la necesitatea unui studiu mai detaliat al acestei subsecțiuni a aritmeticii, devenită indispensabilă în dezvoltarea tehnologiei informatice cu software. Pentru prima dată, astfel de mecanisme au apărut pe piețele germane și franceze.

Atenţie! Un punct specific despre superioritatea sistemului binar în raport cu sistemul zecimal, tocmai în această industrie, a fost stabilit în 1946 și fundamentat într-un articol de A. Bex, H. Goldstein și J. Von Neumann.

Conversia unui număr din sistemul numeric zecimal în binar.

Caracteristicile aritmeticii binare

Toate CC binar se bazează pe aplicarea numai două personaje, care se potrivesc foarte strâns cu caracteristicile circuitului digital. Fiecare dintre simboluri este responsabil pentru o anumită acțiune, care implică adesea două stări:

  • prezența sau absența unei găuri, de exemplu, o carte perforată sau o bandă de hârtie;
  • pe medii magnetice este responsabil pentru starea de magnetizare sau demagnetizare;
  • după nivelul semnalului, ridicat sau scăzut.

În știința în care se folosește SS, a fost introdusă o anumită terminologie, esența ei este următoarea:

  • Bit – Cifră binară, care constă din două componente care poartă un anumit sens. Plasat in stanga este definit ca cel senior si este prioritar, iar in dreapta este cel junior, care este mai putin semnificativ.
  • Un octet este o unitate care constă din opt biți.

Multe module percep și procesează informații în porțiuni sau cuvinte. Fiecare cuvânt are o pondere diferită și poate consta din 8, 16 sau 32 de biți.

Reguli pentru transferurile de la un sistem la altul

Unul dintre cei mai importanți factori în aritmetica mașinii este transfer de la un SS la altul. Prin urmare, să acordăm atenție algoritmilor de bază pentru efectuarea unui proces care va arăta cum să convertim un număr în sistemul binar.

Conversia sistemului zecimal în binar

În primul rând, să ne întoarcem la întrebarea cum să convertim sistemul din sistemul de numere zecimal în sistem binar. Pentru asta există regula de traducere de la numere zecimale la cod binar, ceea ce implică operatii matematice.

Necesită un număr scris în formă zecimală imparti la 2. Continuați împărțirea până când nu mai sunt coeficiente. unitate. Dacă este necesar un sistem de numere binar, traducerea se efectuează după cum urmează:

186:2=93 (răman 0)

93:2=46 (restul 1)

46:2=23 (în rest. 0)

23:2=11 (restul 1)

11:2=5 (răman 1)

5:2=2 (repaus.1)

După ce procesul de împărțire este finalizat, apoi scrieți unul în coeficient și scrieți secvențial toate resturile în ordinea inversă împărțirii. Adică 18610=1111010. Trebuie respectată întotdeauna regula de conversie a numerelor zecimale în SS.

Conversia unui număr din sistemul zecimal în binar.

Conversia de la SS zecimal la octal

Un proces similar este urmat la conversia de la SS zecimal la octal. Se mai numeste si " regula de substituție" Dacă în exemplul anterior datele au fost împărțite la 2, atunci aici este necesar imparti la 8. Algoritmul pentru conversia numărului X10 în octal constă din următorii pași:

  1. Numărul X10 începe să fie împărțit la 8. Luăm câtul rezultat pentru următoarea împărțire, iar restul se scrie ca bitul cel mai puțin semnificativ.
  2. Continuăm împărțirea până când obținem rezultatul coeficientului egal zero sau restul, care în valoarea sa mai putin de opt. În acest caz, scriem toate resturile ca biți de ordin scăzut.

De exemplu, trebuie să convertiți numărul 160110 în octal.

1601:8=200 (răman 1)

200:8=25 (răman 0)

25:8=3 (rest.1)

Deci, obținem: 161010=31018.

Conversia de la zecimal la octal.

Scrieți un număr zecimal în hexazecimal

Conversia de la SS zecimal la hexazecimal se realizează în mod similar utilizând sistemul de substituție. Dar, pe lângă numere, mai folosesc litere ale alfabetului latin A, B, C, D, E, F. Unde A indică restul 10, iar F restul 15. Numărul zecimal este împărțit la 16. De exemplu, convertiți 10710 în hexazecimal:

107:16=6 (rămași 11 – înlocuiți B)

6 este mai puțin de șaisprezece ani. Oprim împărțirea și scriem 10710 = 6B16.

Trecerea de la un alt sistem la binar

Următoarea întrebare este cum se transformă un număr din octal în binar. Convertirea numerelor din orice sistem în binar este destul de simplă. Un asistent în această chestiune este tabel pentru sisteme numerice.

Sistemul numeric pozițional a apărut pentru prima dată în Babilonul antic. În India sistemul funcționează ca

numerotarea zecimală pozițională folosind zero, indienii au acest sistem de numere

națiunea arabă a împrumutat, iar europenii, la rândul lor, le-au luat. În Europa acest sistem a devenit

numiți-o arabă.

Sistem pozițional - semnificația tuturor cifrelor depinde de poziția (cifra) unei cifre date într-un număr.

Exemple, sistemul standard al 10-lea număr este un sistem pozițional. Să presupunem că este dat numărul 453.

Numărul 4 denotă sute și corespunde numărului 400, 5 - numărul zecilor și corespunde valorii 50,

și 3 - unități și valoarea 3. Este ușor de observat că pe măsură ce cifra crește, valoarea crește.

Astfel, scriem numărul dat ca sumă 400+50+3=453.

Sistem de numere binar.

Există doar 2 cifre aici - 0 și 1. Baza sistemului binar- numarul 2.

Numărul situat chiar la marginea din dreapta indică numărul de unități, al doilea număr indică

În toate cifrele, este posibilă o singură cifră - fie zero, fie una.

Folosind sistemul de numere binar, este posibil să codificați orice număr natural prin reprezentare

Acest număr este o succesiune de zerouri și unu.

Exemplu: 10112 = 1*2 3 + 0*2*2+1*2 1 +1*2 0 =1*8 + 1*2+1=1110

Sistemul de numere binar, ca și sistemul de numere zecimal, este adesea folosit în calcul

tehnologie. Calculatorul stochează text și numere în memoria sa în cod binar și le convertește în mod programatic

în imaginea de pe ecran.

Adunarea, scăderea și înmulțirea numerelor binare.

Tabel de adunare în sistemul numeric binar:

10 (transfer la

grad superior)

Tabelul de scădere în sistemul numeric binar:

(împrumut de la senior

categorie) 1

Exemplu de adăugare a coloanei (14 10 + 5 10 = 19 10 sau 1110 2 + 101 2 = 10011 2):

+ 1 1 1 0
1 0 1
1 0 0 1 1

Tabelul de înmulțire în sistemul numeric binar:

Exemplu de înmulțire a coloanei (14 10 * 5 10 = 70 10 sau 1110 2 * 101 2 = 1000110 2):

* 1 1 1 0
1 0 1
+ 1 1 1 0
1 1 1 0
= 1 0 0 0 1 1 0

Conversie numerică în sistemul de numere binar.

Pentru a converti din binar în zecimal, utilizați următorul tabel de exponenți

bazele 2:

Începând cu cifra unu, fiecare cifră este înmulțită cu 2. Se numește punctul de după 1 punct binar.

Convertiți numerele binare în zecimale.

Să fie un număr binar 110001 2. Pentru a converti în zecimală o scriem ca o sumă cu

se clasează după cum urmează:

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

Puțin diferit:

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

De asemenea, este bine să scrieți calculul ca tabel:

Ne deplasăm de la dreapta la stânga. Sub toate unitățile binare scriem echivalentul său în linia de mai jos.

Convertiți numere binare fracționale în numere zecimale.

Exercițiu: convertiți numărul 1011010, 101 2 în sistemul zecimal.

Scriem numărul dat în această formă:

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

O altă opțiune de înregistrare:

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

Sau sub formă de tabel:

0.25

0.125

0.125

Convertiți numere zecimale în binare.

Să presupunem că trebuie să convertiți numărul 19 în binar. O putem face astfel:

19 /2 = 9 cu restul 1

9 /2 = 4 cu rest 1

4 /2 = 2 fără urmă 0

2 /2 = 1 fără urmă 0

1 /2 = 0 cu restul 1

Adică, fiecare coeficient este împărțit la 2, iar restul este scris la sfârșitul notației binare. Divizia

continuă până când nu există zero în coeficient. Scriem rezultatul de la dreapta la stânga. Acestea. inferior

numărul (1) va fi cel din stânga și așa mai departe. Deci, avem numărul 19 în notație binară: 10011.

Conversia numerelor zecimale fracționale în binare.

Atunci când un număr dat conține o parte întreagă, acesta este convertit separat de partea fracțională. Traducere

conversia unui număr fracționar din sistemul numeric zecimal în sistemul binar are loc după cum urmează:

  • Fracția se înmulțește cu baza sistemului numeric binar (2);
  • În produsul rezultat, o întreagă parte este izolată, care este luată drept principală.

cifra unui număr în sistemul de numere binar;

  • Algoritmul se termină dacă partea fracțională a produsului rezultat este zero sau dacă

a fost atinsă precizia de calcul necesară. În caz contrar, calculele continuă

parte fracțională a produsului.

Exemplu: Trebuie să convertiți numărul zecimal fracționar 206,116 într-un număr binar fracționar.

Traducând întreaga parte, obținem 206 10 =11001110 2. Partea fracțională a lui 0,116 este înmulțită cu baza 2,

Punem toate părțile produsului în zecimale:

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

Rezultat: 206,116 10 ≈ 11001110,0001110110 2

Un algoritm pentru conversia numerelor dintr-un sistem numeric în altul.

1. Din sistemul numeric zecimal:

  • împărțiți numărul la baza sistemului numeric tradus;
  • găsiți restul la împărțirea părții întregi a unui număr;
  • notează toate resturile din împărțire în ordine inversă;

2. Din sistemul de numere binar:

  • pentru a converti în sistemul numeric zecimal, găsim suma produselor bazei 2 prin

gradul adecvat de descărcare;

Scrieți numărul în sistemul numeric binar și puterile a doi de la dreapta la stânga. De exemplu, dorim să convertim numărul binar 10011011 2 în zecimal. Să o scriem mai întâi. Apoi scriem puterile a doi de la dreapta la stânga. Să începem cu 2 0, care este egal cu „1”. Creștem gradul cu unul pentru fiecare număr ulterior. Ne oprim atunci când numărul de elemente din listă este egal cu numărul de cifre din numărul binar. Numărul nostru exemplu, 10011011, are opt cifre, deci o listă de opt elemente ar arăta astfel: 128, 64, 32, 16, 8, 4, 2, 1

Scrieți cifrele numărului binar sub puterile corespunzătoare a lui doi. Acum scrieți pur și simplu 10011011 sub numerele 128, 64, 32, 16, 8, 4, 2 și 1, astfel încât fiecare cifră binară să corespundă unei puteri diferite de doi. Cel mai din dreapta „1” al numărului binar trebuie să corespundă celui din dreapta „1” al puterilor a doi și așa mai departe. Dacă preferați, puteți scrie numărul binar deasupra puterilor lui doi. Cel mai important lucru este că se potrivesc între ele.

Potriviți cifrele dintr-un număr binar cu puterile corespunzătoare a doi. Desenați linii (de la dreapta la stânga) care conectează fiecare cifră succesivă a numărului binar de puterea a doi deasupra acestuia. Începeți să desenați linii conectând prima cifră a unui număr binar la prima putere a două de deasupra acestuia. Apoi trageți o linie de la a doua cifră a numărului binar la a doua putere a lui doi. Continuați să conectați fiecare număr la puterea corespunzătoare a doi. Acest lucru vă va ajuta să vedeți vizual relația dintre două seturi diferite de numere.

Notați valoarea finală a fiecărei puteri a două. Treceți prin fiecare cifră a unui număr binar. Dacă numărul este 1, scrieți puterea corespunzătoare a doi sub număr. Dacă acest număr este 0, scrieți 0 sub număr.

  • Deoarece „1” se potrivește cu „1”, rămâne „1”. Deoarece „2” se potrivește cu „1”, rămâne „2”. Deoarece „4” corespunde cu „0”, acesta devine „0”. Deoarece „8” se potrivește cu „1”, devine „8”, iar din moment ce „16” se potrivește cu „1” devine „16”. „32” se potrivește cu „0” și devine „0”, „64” se potrivește cu „0” și, prin urmare, devine „0”, în timp ce „128” se potrivește cu „1” și, prin urmare, devine 128.
  • Adunați valorile rezultate. Acum adăugați numerele rezultate sub linie. Iată ce trebuie să faceți: 128 + 0 + 0 + 16 + 8 + 0 + 2 + 1 = 155. Acesta este echivalentul zecimal al numărului binar 10011011.

    Scrieți răspunsul împreună cu un indice egal cu sistemul numeric. Acum tot ce trebuie să faci este să scrii 155 10 pentru a arăta că lucrezi cu un răspuns zecimal, care tratează puterile lui zece. Cu cât convertiți mai multe numere binare în zecimale, cu atât vă va fi mai ușor să vă amintiți puterile a doi și cu atât mai repede veți putea finaliza sarcina.

  • Utilizați această metodă pentru a converti un număr binar cu un punct zecimal în formă zecimală. Puteți folosi această metodă chiar dacă doriți să convertiți un număr binar, cum ar fi 1,1 2, în zecimal. Tot ce trebuie să știți este că numărul din partea stângă a zecimalei este un număr obișnuit, iar numărul din partea dreaptă a zecimalei este numărul „jumătate” sau 1 x (1/2).

    • „1” din stânga numărului zecimal corespunde cu 2 0 sau 1. 1 din dreapta numărului zecimal corespunde cu 2 -1 sau.5. Adăugați 1 și 0,5 și obțineți 1,5, care este echivalentul zecimal al lui 1,1 2.
  • Salut, vizitator 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 fundamentale, 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, rareori cineva știe cum să facă acest lucru mental; profesorii diferitelor cursuri pe rețelele de calculatoare se încadrează în principal în această categorie, deoarece se confruntă cu asta în mod constant î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 î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 o putere sau alta, de exemplu, să luăm numărul 321. Cum poate fi scris diferit, astfel: 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 sub-indici: 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 sistemul 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 unul la doi, 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, de asemenea, 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 și 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 în care 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)? E 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 și 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; trebuie să îl scriem 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, acesta 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, 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 una; î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.

    Rezultatul a fost deja primit!

    Sisteme numerice

    Există sisteme numerice poziționale și nepoziționale. Sistemul de numere arabe, pe care îl folosim în viața de zi cu zi, este pozițional, dar sistemul de numere roman nu este. În sistemele de numere poziționale, poziția unui număr determină în mod unic mărimea numărului. Să luăm în considerare acest lucru folosind exemplul numărului 6372 din sistemul numeric zecimal. Să numerotăm acest număr de la dreapta la stânga începând de la zero:

    Apoi, numărul 6372 poate fi reprezentat astfel:

    6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

    Numărul 10 determină sistemul numeric (în acest caz este 10). Valorile poziției unui număr dat sunt luate ca puteri.

    Luați în considerare numărul zecimal real 1287,923. Să-l numerotăm începând de la poziția zero a numărului de la virgulă zecimală la stânga și la dreapta:

    Atunci numărul 1287.923 poate fi reprezentat ca:

    1287,923 =1000+200+80 +7+0,9+0,02+0,003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3· 10 -3.

    În general, formula poate fi reprezentată după cum urmează:

    C n s n +C n-1 · s n-1 +...+C 1 · s 1 +C 0 ·s 0 +D -1 ·s -1 +D -2 ·s -2 +...+D -k ·s -k

    unde C n este un număr întreg în poziție n, D -k - număr fracționar în poziția (-k), s- sistemul de numere.

    Câteva cuvinte despre sistemele numerice.Un număr în sistemul numeric zecimal este format din mai multe cifre (0,1,2,3,4,5,6,7,8,9), în sistemul numeric octal este format din mai multe cifre (0,1, 2,3,4,5,6,7), în sistemul numeric binar - dintr-un set de cifre (0,1), în sistemul numeric hexazecimal - dintr-un set de cifre (0,1 ,2,3,4,5,6, 7,8,9,A,B,C,D,E,F), unde A,B,C,D,E,F corespund numerelor 10,11, 12,13,14,15.În tabelul Tab.1 numerele sunt prezentate în diferite sisteme numerice.

    tabelul 1
    Notaţie
    10 2 8 16
    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 A
    11 1011 13 B
    12 1100 14 C
    13 1101 15 D
    14 1110 16 E
    15 1111 17 F

    Conversia numerelor dintr-un sistem numeric în altul

    Pentru a converti numerele dintr-un sistem numeric în altul, cel mai simplu mod este să convertiți mai întâi numărul în sistemul numeric zecimal, apoi convertiți din sistemul numeric zecimal în sistemul numeric necesar.

    Conversia numerelor din orice sistem numeric în sistemul numeric zecimal

    Folosind formula (1), puteți converti numerele din orice sistem numeric în sistemul numeric zecimal.

    Exemplu 1. Convertiți numărul 1011101.001 din sistemul numeric binar (SS) în SS zecimal. Soluţie:

    1 ·2 6 +0 ·2 5 + 1 ·2 4 + 1 ·2 3 + 1 ·2 2 + 0 ·2 1 + 1 ·2 0 + 0 ·2 -1 + 0 ·2 -2 + 1 ·2 -3 =64+16+8+4+1+1/8=93,125

    Exemplu2. Convertiți numărul 1011101.001 din sistemul de numere octale (SS) în SS zecimal. Soluţie:

    Exemplu 3 . Convertiți numărul AB572.CDF din sistemul numeric hexazecimal în SS zecimal. Soluţie:

    Aici A-inlocuit cu 10, B- la 11, C- la 12, F- pana la 15.

    Conversia numerelor din sistemul numeric zecimal în alt sistem numeric

    Pentru a converti numerele din sistemul de numere zecimal într-un alt sistem de numere, trebuie să convertiți separat partea întreagă a numărului și partea fracțională a numărului.

    Partea întreagă a unui număr este convertită din SS zecimal într-un alt sistem de numere prin împărțirea secvențială a părții întregi a numărului la baza sistemului de numere (pentru SS binar - la 2, pentru SS 8-ary - la 8, pentru 16 -ary SS - cu 16, etc.) până când se obține un reziduu întreg, mai mic decât baza CC.

    Exemplu 4 . Să convertim numărul 159 din SS zecimal în SS binar:

    159 2
    158 79 2
    1 78 39 2
    1 38 19 2
    1 18 9 2
    1 8 4 2
    1 4 2 2
    0 2 1
    0

    După cum se poate observa din fig. 1, numărul 159 când este împărțit la 2 dă câtul 79 și restul 1. În plus, numărul 79 când este împărțit la 2 dă câtul 39 și restul 1 etc. Ca rezultat, construind un număr din resturile de împărțire (de la dreapta la stânga), obținem un număr în SS binar: 10011111 . Prin urmare putem scrie:

    159 10 =10011111 2 .

    Exemplu 5 . Să convertim numărul 615 din SS zecimal în SS octal.

    615 8
    608 76 8
    7 72 9 8
    4 8 1
    1

    Când convertiți un număr dintr-un SS zecimal într-un SS octal, trebuie să împărțiți succesiv numărul la 8 până când obțineți un rest întreg mai mic decât 8. Ca rezultat, construind un număr din resturile de diviziune (de la dreapta la stânga) obținem un număr în SS octal: 1147 (vezi fig. 2). Prin urmare putem scrie:

    615 10 =1147 8 .

    Exemplu 6 . Să convertim numărul 19673 din sistemul numeric zecimal în SS hexazecimal.

    19673 16
    19664 1229 16
    9 1216 76 16
    13 64 4
    12

    După cum se poate observa din figura 3, împărțind succesiv numărul 19673 la 16, resturile sunt 4, 12, 13, 9. În sistemul numeric hexazecimal, numărul 12 corespunde lui C, numărul 13 la D. Prin urmare, numărul nostru numărul hexazecimal este 4CD9.

    Pentru a converti fracții zecimale regulate (un număr real cu o parte întreagă zero) într-un sistem numeric cu baza s, este necesar să înmulțim succesiv acest număr cu s până când partea fracțională conține un zero pur sau obținem numărul necesar de cifre . Dacă, în timpul înmulțirii, se obține un număr cu o parte întreagă, alta decât zero, atunci această parte întreagă nu este luată în considerare (sunt incluse secvenţial în rezultat).

    Să ne uităm la cele de mai sus cu exemple.

    Exemplu 7 . Să convertim numărul 0,214 din sistemul numeric zecimal în SS binar.

    0.214
    X 2
    0 0.428
    X 2
    0 0.856
    X 2
    1 0.712
    X 2
    1 0.424
    X 2
    0 0.848
    X 2
    1 0.696
    X 2
    1 0.392

    După cum se poate vedea din Fig. 4, numărul 0,214 este înmulțit succesiv cu 2. Dacă rezultatul înmulțirii este un număr cu o parte întreagă, alta decât zero, atunci partea întreagă este scrisă separat (în stânga numărului), iar numărul este scris cu o parte întreagă zero. Dacă înmulțirea are ca rezultat un număr cu o parte întreagă zero, atunci în stânga acestuia se scrie un zero. Procesul de înmulțire continuă până când partea fracțională ajunge la zero pur sau obținem numărul necesar de cifre. Scriind numere îngroșate (Fig. 4) de sus în jos obținem numărul necesar în sistemul numeric binar: 0. 0011011 .

    Prin urmare putem scrie:

    0.214 10 =0.0011011 2 .

    Exemplu 8 . Să convertim numărul 0,125 din sistemul numeric zecimal în SS binar.

    0.125
    X 2
    0 0.25
    X 2
    0 0.5
    X 2
    1 0.0

    Pentru a converti numărul 0,125 din zecimal SS în binar, acest număr este înmulțit succesiv cu 2. În a treia etapă, rezultatul este 0. În consecință, se obține următorul rezultat:

    0.125 10 =0.001 2 .

    Exemplu 9 . Să convertim numărul 0,214 din sistemul numeric zecimal în SS hexazecimal.

    0.214
    X 16
    3 0.424
    X 16
    6 0.784
    X 16
    12 0.544
    X 16
    8 0.704
    X 16
    11 0.264
    X 16
    4 0.224

    Urmând exemplele 4 și 5, obținem numerele 3, 6, 12, 8, 11, 4. Dar în SS hexazecimal, numerele 12 și 11 corespund numerelor C și B. Prin urmare, avem:

    0,214 10 = 0,36C8B4 16 .

    Exemplu 10 . Să convertim numărul 0,512 din sistemul numeric zecimal în SS octal.

    0.512
    X 8
    4 0.096
    X 8
    0 0.768
    X 8
    6 0.144
    X 8
    1 0.152
    X 8
    1 0.216
    X 8
    1 0.728

    A primit:

    0.512 10 =0.406111 8 .

    Exemplu 11 . Să convertim numărul 159,125 din sistemul numeric zecimal în SS binar. Pentru a face acest lucru, traducem separat partea întreagă a numărului (Exemplul 4) și partea fracțională a numărului (Exemplul 8). Combinând în continuare aceste rezultate, obținem:

    159.125 10 =10011111.001 2 .

    Exemplu 12 . Să convertim numărul 19673,214 din sistemul numeric zecimal în SS hexazecimal. Pentru a face acest lucru, traducem separat partea întreagă a numărului (Exemplul 6) și partea fracțională a numărului (Exemplul 9). În plus, combinând aceste rezultate, obținem.