Cum se transformă de la 2 la zecimal. Cum se transformă din binar în zecimal. Conversia numerelor din binar în zecimal

Expresia că totul nou nu este altceva decât vechiul bine uitat se aplică pe deplin Se pare că chiar și în China antică au folosit deja ceva care amintește de „unu și zero” nostru, deși nu pentru aritmetică, ci pentru scrierea textelor cărții. a Schimbărilor. Cel mai aproape de înțelegere sisteme diferite Incașii erau notaționiști: foloseau atât sisteme zecimale, cât și binar, deși acestea din urmă doar pentru mesaje text și codificate. Se poate presupune că chiar și atunci, acum 4 mii de ani, incașii știau să convertească din binar în sistem zecimal.

Versiunea modernă a fost propusă de Leibniz cu doar aproximativ 300 de ani în urmă, iar după încă un secol și jumătate și-a lăsat numele în memoria posterității cu lucrarea sa despre algebra logicii. Aritmetică binarăîmpreună cu algebra logicii au devenit fundamentul curentului tehnologie digitala. Totul a început în 1937, când a fost propusă o metodă de analiză simbolică a releelor ​​și a circuitelor de comutare. Această lucrare a lui Claude Chenon a devenit „mama” pentru computerul releu care a funcționat adiție binară deja în 1937. Și, desigur, una dintre sarcinile acestui „străbunic” calculatoare moderne A existat o conversie din sistem binar în sistem zecimal.

Au trecut doar trei ani și următorul model de releu „calculator” a trimis comenzi la calculator folosind linie telefonicăși teletip - ei bine, doar vechiul Internet în acțiune.

Ce sunt sistemul binar, zecimal, hexazecimal și, în general, orice sistem N-ary? Nimic complicat. Hai sa luam număr din trei cifreîn sistemul nostru zecimal preferat, este reprezentat folosind 10 semne - de la 0 la 9, ținând cont de locația lor. Să determinăm că cifrele acestui număr sunt în pozițiile 0, 1, 2 (ordinea merge de la ultima cifră la prima). Fiecare poziție poate conține oricare dintre numerele din sistem, dar dimensiunea acestui număr este determinată nu numai de conturul său, ci și de locația sa. De exemplu, pentru numărul 365 (respectiv, poziția 0 este numărul 5, poziția 1 este numărul 6 și poziția 2 este numărul 3) valoarea numărului la poziția zero este pur și simplu 5, la prima poziție - 6*10, iar la al doilea - 3* 10*10. Este interesant aici că pornind de la prima poziție, numărul conține o cifră semnificativă (de la 0 la 9) și baza sistemului la o putere egală cu numărul poziției, i.e. putem scrie că 345 = 3*10*10 + 6*10 +3 = 3*102 + 6*101 + 5*100.

Alt exemplu:

260974 = 2*105 + 6*104 + 0*103 + 9*102 + 7*101 + 4*100.

După cum putem vedea, fiecare loc pozițional conține un număr semnificativ din mulțimea unui sistem dat și un multiplicator de la baza sistemului la puterea unei poziții egale. număr dat(capacitatea de cifre a unui număr este numărul de poziții, dar +1 mai mult).

Din punctul de vedere al reprezentării unui număr, forma sa binară este uluitoare prin simplitatea sa - există doar 2 numere în sistem - 0 și 1. Dar frumusețea matematicii este că, chiar și într-o formă trunchiată, așa cum poate părea, numerele binare sunt la fel de pline și egale ca „tovarășii lor mai înalți”. Dar cum pot fi comparate, de exemplu, cu un număr zecimal? Alternativ, trebuie să faceți, și încet, o conversie din binar în zecimal. Sarcina nu poate fi numită dificilă, dar această muncă minuțioasă necesită atenție. Deci, să începem.

Pe baza celor spuse mai sus despre ordinea reprezentării numerelor în orice sistem și ținând cont de cel mai simplu dintre ele - binar, să luăm orice succesiune de „unu și zerouri”. Să numim acest număr VO (în rusă VO) și să încercăm să aflăm ce este - conversia din sistem binar în sistem zecimal. Fie VO=11001010010. La prima vedere, numărul este doar un număr. Să vedem!

În prima linie vom aranja numărul în sine într-o formă extinsă și vom scrie pe al doilea ca suma fiecărei poziții sub formă de factori - o cifră semnificativă (aici alegerea este mică - 0 sau 1) și numărul 2 la puterea egală cu numărul pozițional din sistemul zecimal, facem traducerea din binar în zecimal. Acum a doua linie trebuie doar să facă calculele. Pentru claritate, puteți adăuga și o a treia linie cu calcule intermediare.

VO = 1 1 0 0 1 0 1 0 0 1 0;

VO = 1*210 + 1*29 + 0*28 + 0*27 + 1*26 + 0*25 + 1*24 + 0*23 + 0*22 + 1*21 + 0*20;

VO=1*1024 + 1*512+0*256+0*128+ 1*64 + 0*32 + 1*16 + 0*8 +0*4 + 1*2 + 0*1.

Calculăm „aritmetica” din a treia linie și avem ceea ce căutam: VO = 1618. Deci, ce este atât de grozav în asta? Și faptul că acest număr este cel mai faimos dintre toate cele cunoscute de oameni: proporțiile piramidelor egiptene, celebra Mona Lisa, notele muzicale și corpul uman sunt asociate cu el, dar... Dar cu o mică clarificare - știind că ar trebui să fie mult bine, Majestatea Sa este un caz care ne-a dat acest număr de 1000 de ori mai mare decât valoarea reală - 1.618. Probabil pentru ca toată lumea să se bucure de ea. Și în același timp o traducere din sistem binarîn zecimală a ajutat la „prinderea” cel mai remarcabil lucru din marea nesfârșită de numere - este numită și „proporția de aur”.

Scopul serviciului. Serviciul este conceput pentru a converti numerele dintr-un sistem numeric în altul în modul online. Pentru a face acest lucru, selectați baza sistemului din care doriți să convertiți numărul. Puteți introduce atât numere întregi, cât și numere cu virgule.

Număr

Conversie din sistemul numeric 10 2 8 16. Convertiți în sistemul numeric 2 10 8 16.
Pentru numere fracționare utilizați 2 3 4 5 6 7 8 zecimale.

Puteți introduce atât numere întregi, de exemplu 34, cât și numere fracționale, de exemplu, 637,333. Pentru numerele fracționare, este indicată precizia translației după virgulă zecimală.

Următoarele sunt, de asemenea, utilizate cu acest calculator:

Modalități de a reprezenta numere

Binar numere (binare) - fiecare cifră înseamnă valoarea unui bit (0 sau 1), bitul cel mai semnificativ este întotdeauna scris în stânga, litera „b” este plasată după număr. Pentru ușurința percepției, caietele pot fi separate prin spații. De exemplu, 1010 0101b.
hexazecimal numere (hexazecimale) - fiecare tetradă este reprezentată de un simbol 0...9, A, B, ..., F. Această reprezentare poate fi desemnată în diferite moduri aici numai simbolul „h” este folosit după ultimul hexazecimal; cifră. De exemplu, A5h. În textele programelor, același număr poate fi desemnat fie 0xA5, fie 0A5h, în funcție de sintaxa limbajului de programare. În stânga celei mai semnificative cifre hexazecimale reprezentate de literă se adaugă un zero (0) înainte de a face distincția între numere și nume simbolice.
Zecimal numere (zecimale) – fiecare octet (cuvânt, cuvânt dublu) pare număr obișnuit, iar semnul de reprezentare zecimală (litera „d”) este de obicei omis. Octetul din exemplele anterioare are o valoare zecimală de 165. Spre deosebire de notația binară și hexazecimală, zecimalul este dificil de determinat mental valoarea fiecărui bit, ceea ce uneori este necesar.
Octal numere (octale) - fiecare triplu de biți (diviziunea începe de la cel mai puțin semnificativ) este scris ca un număr 0–7, cu un „o” la sfârșit. Același număr ar fi scris ca 245o. Sistemul octal este incomod deoarece octetul nu poate fi împărțit în mod egal.

Algoritm pentru conversia numerelor dintr-un sistem numeric în altul

Conversia numerelor zecimale întregi în orice alt sistem de numere se realizează prin împărțirea numărului la bază sistem nou numerotarea până când restul rămâne un număr mai mic decât baza noului sistem de numere. Noul număr se scrie ca resturi de împărțire, începând de la ultimul.
Conversia unei fracții zecimale corecte într-un alt PSS se realizează prin înmulțirea numai a părții fracționale a numărului cu baza noului sistem de numere până când toate zerourile rămân în partea fracțională sau până când aceasta ajunge. precizie specificată traducere. În urma fiecărei operații de înmulțire, se formează o cifră a unui număr nou, începând cu cea mai mare.
Translația necorespunzătoare a fracțiilor se efectuează conform regulilor 1 și 2. Părțile întregi și fracționale sunt scrise împreună, separate prin virgulă.

Exemplul nr. 1.



Conversie de la 2 la 8 la 16 sistem de numere.
Aceste sisteme sunt multipli de doi, prin urmare traducerea se realizează folosind un tabel de corespondență (vezi mai jos).

Pentru a converti un număr din sistemul de numere binar în sistemul de numere octal (hexazecimal), este necesar să împărțiți numărul binar de la punctul zecimal la dreapta și la stânga în grupuri de trei (patru pentru hexazecimal) cifre, completând grupurile exterioare. cu zerouri dacă este necesar. Fiecare grup este înlocuit cu cifra octală sau hexazecimală corespunzătoare.

Exemplul nr. 2. 1010111010.1011 = 1.010.111.010.101.1 = 1272.51 8
aici 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

Când convertiți la sistemul hexazecimal, trebuie să împărțiți numărul în părți de patru cifre, urmând aceleași reguli.
Exemplul nr. 3. 1010111010,1011 = 10.1011.1010,1011 = 2B12,13 HEX
aici 0010=2; 1011=B; 1010=12; 1011=13

Convertirea numerelor de la 2, 8 și 16 în sistemul zecimal se face prin împărțirea numărului în unele individuale și înmulțirea acestuia cu baza sistemului (din care este tradus numărul) ridicat la puterea corespunzătoare acestuia. număr de serieîn numărul tradus. În acest caz, numerele sunt numerotate la stânga virgulei zecimale (primul număr este numerotat cu 0) în ordine crescătoare și în partea dreapta cu descreștere (adică cu semn negativ). Se adună rezultatele obținute.

Exemplul nr. 4.
Un exemplu de conversie din sistem de numere binar în zecimal.

1010010.101 2 = 1·2 6 +0·2 5 +1·2 4 +0·2 3 +0·2 2 +1·2 1 +0·2 0 + 1·2 -1 +0·2 - 2 + 1 2 -3 =
= 64+0+16+0+0+2+0+0,5+0+0,125 = 82,625 10 Un exemplu de conversie din sistemul de numere octal în zecimal. 108,5 8 = 1*·8 2 +0·8 1 +8·8 0 + 5·8 -1 = 64+0+8+0,625 = 72,625 10 Un exemplu de conversie din sistemul numeric hexazecimal în zecimal. 108,5 16 = 1·16 2 +0·16 1 +8·16 0 + 5·16 -1 = 256+0+8+0,3125 = 264,3125 10

Încă o dată repetăm ​​algoritmul de conversie a numerelor dintr-un sistem numeric în altul PSS

  1. Din sistemul numeric zecimal:
    • împărțiți numărul la baza sistemului numeric care este tradus;
    • găsiți restul la împărțirea unei părți întregi a unui număr;
    • notează toate resturile din împărțire în ordine inversă;
  2. Din sistemul de numere binar
    • Pentru a converti la sistemul numeric zecimal, este necesar să găsiți suma produselor bazei 2 cu gradul corespunzător al cifrei;
    • Pentru a converti un număr în octal, trebuie să împărțiți numărul în triade.
      De exemplu, 1000110 = 1.000 110 = 106 8
    • Pentru a converti un număr din binar în hexazecimal, trebuie să împărțiți numărul în grupuri de 4 cifre.
      De exemplu, 1000110 = 100 0110 = 46 16
Sistemul se numește pozițional, pentru care semnificația sau greutatea unei cifre depinde de locația acesteia în număr. Relația dintre sisteme este exprimată într-un tabel.
Tabelul de corespondență al sistemului numeric:
SS binarSS hexazecimal
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

Tabel pentru conversia în sistemul de numere octale

Bună ziua, vizitator al site-ului! Continuăm să studiem protocolul stratul de rețea IP, sau 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ă Examenele Cisco nu iti vor da un calculator IP si gata 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 trebuie să fie capabil să convertească numerele din binar în zecimal și invers în capul său. Mai mult decât atât, rar cineva știe să facă asta mental profesorii de diferite cursuri în retele de calculatoare, deoarece se confruntă cu asta în mod constant zi de 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. Numărul este caracter special a desemna, iar numărul este o notație abstractă care înseamnă 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 numere sau zece simboluri (0,1,2,3,4,5,6,7,8,9), prin combinarea cărora putem scrie numere diferite. 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 egal cu zeroîn zecimală, la fel pentru unități. 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 numeric.

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 cifre 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 greu 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.

Acesta nu este cel mai mult cale rapidă conversia unui 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 lui doi, se aplică o regulă simplă: în sistemul binar aceasta numar decimal se scrie ca un numar de unitati egal cu o putere de doua. 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 convertirea 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 mai avem nevoie, pentru că maxim număr posibil, care poate fi scris într-un octet (8 biți sau opt valori binare) este egal cu 255, adică în fiecare octet al adresei IP sau al măștii de subrețea IPv4 există un maxim sens posibil— 255. Există câmpuri care au 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 cele simple operatii aritmetice, apoi treceți la operațiuni 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 erau exemple simple unde a fost folosită o singură cifră, să ne uităm la exemple în care numărul de cifre este mai mare de unul.
101+1101 în sistemul zecimal este 5 + 13 = 18. Să numărăm într-o coloană.

Rezultatul este evidentiat portocale, 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)? 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, 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 succesiune 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 cantitatea operatori disponibili deasupra acestor valori, să ne uităm la ele.

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 unul numai dacă unul dintre operanzi egal cu unu, iar 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.

Cei care susțin examenul de stat unificat și multe altele...

Este ciudat că în lecțiile de informatică din școli, de obicei, le arată elevilor cel mai complex și incomod mod de a converti numerele dintr-un sistem în altul. Această metodă constă în împărțirea succesivă a numărului inițial la bază și colectarea resturilor din împărțire în ordine inversă.

De exemplu, trebuie să convertiți numărul 810 10 în binar:

Scriem rezultatul în ordine inversă de jos în sus. Se dovedește că 81010 = 11001010102

Dacă trebuie să convertiți la sistemul binar, destul numere mari, apoi scara de diviziune capătă dimensiunea unei clădiri cu mai multe etaje. Și cum poți aduna toate cele și zerourile și să nu ratezi niciunul?

ÎN Programul de examen de stat unificatîn informatică include mai multe sarcini legate de traducerea 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țiunea 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 cu ușurință prin înmulțirea numărului anterior cu 2. Deci, dacă nu vă amintiți toate aceste numere, restul nu sunt greu de obținut în minte din 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 A B C D E F

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

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 rămân 1 sau 0.
  4. Am prins așa: 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 sa este întotdeauna 10. Pătratul bazei va fi întotdeauna 100, cubul 1000. Adică, gradul bazei sistemului numeric este 1 (unul) și sunt tot atâtea zerouri în spate câte este 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 e tot. Pe parcurs, problema „câte unități în notație binară numarul 810?

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 A

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 cod suplimentar. Pentru a converti un număr în cod suplimentar, trebuie să știți dimensiunea finală a numărului, adică în ce vrem 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. Nu considerăm numerele nesemnate, ele sunt întotdeauna pozitive, iar bitul cel mai semnificativ din ele este folosit ca informație.

Pentru a converti un număr negativ în cod 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.

Convertim 79 în sistemul binar, 79 = 1001111. Adăugăm zerouri în stânga la dimensiunea octetului, 8 biți, obținem 01001111. Schimbăm 1 la 0 și 0 la 1. Obținem 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 sunt în reprezentarea binară a numărului -79?” Raspunsul este 4.

Adăugarea lui 1 la inversul unui număr elimină diferența dintre reprezentările +0 = 00000000 și -0 = 11111111. În codul complement a doi vor fi scrise la fel ca 00000000.

Conversia numerelor fracționale

Numerele fracționale sunt convertite în modul invers al împărțirii numerelor întregi la bază, la care 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 pentru o lungă perioadă de 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 binar va fi 101.101011.

ÎN Viata de zi cu zi Suntem obișnuiți să folosim sistemul numeric zecimal, cunoscut nouă încă de la școală. Cu toate acestea, pe lângă el, există multe alte sisteme. Cum se scrie numerele nu în zecimală, ci, de exemplu, în?

Cum se transformă orice număr din sistemul zecimal în binar

Necesitatea de a converti un număr zecimal în binar pare descurajantă doar la prima vedere. De fapt, este destul de simplu - nici măcar nu trebuie să cauți servicii online pentru a finaliza tranzacția.

  • De exemplu, să luăm numărul 156, scris în forma zecimală cu care suntem familiarizați, și să încercăm să-l convertim în formă binară.
  • Algoritmul va arăta astfel - numărul inițial va trebui împărțit la doi, apoi din nou la 2 și din nou la 2 până când răspunsul rămâne unul.
  • Când împărțiți pentru a converti în cod binar Nu numerele întregi contează, ci resturile. Dacă, la împărțire, răspunsul se dovedește a fi un număr par, atunci restul se scrie ca număr 0 dacă este impar, atunci ca număr 1;
  • În practică, puteți verifica cu ușurință că seria binară inițială a resturilor pentru numărul 156 va arăta astfel - 00111001. Pentru a o transforma într-un cod binar cu drepturi depline, această serie va trebui scrisă în ordine inversă - că este, 10011100.

Numărul binar 10011100, obținut în urma unei operații simple, va fi expresia binară a numărului 156.

Un alt exemplu, dar in poza

Conversia numărului binar în sistem zecimal

Conversia inversă - de la binar la zecimal - poate părea puțin mai complicată. Dar dacă utilizați o metodă simplă de dublare, atunci vă puteți ocupa de această sarcină în câteva minute. De exemplu, să luăm același număr, 156, dar în formă binară - 10011100.

  • Metoda de dublare se bazează pe faptul că la fiecare pas al calculului se ia așa-numitul total anterior și i se adaugă următoarea cifră.
  • Deoarece la primul pas totalul anterior nu există încă, aici luăm întotdeauna 0, îl dublem și îi adăugăm prima cifră a expresiei. În exemplul nostru va fi 0 * 2 + 1 = 1.
  • La al doilea pas, avem deja totalul anterior - este egal cu 1. Acest număr trebuie dublat, iar apoi trebuie adăugat următorul în ordine, adică - 1 * 2 + 0 = 2.
  • În al treilea, al patrulea și următorii pași, totalurile anterioare sunt încă luate și adăugate la numărul următor din expresie.

Când în notația binară rămâne doar ultima cifră și nu mai este nimic de adăugat, operația este finalizată. Cu o simplă verificare, vă puteți asigura că răspunsul conține numărul zecimal dorit 156.