Convertiți din calculator octal în binar. Convertiți rapid un număr din sistemul numeric zecimal în binar
În acest articol vă voi spune elementele de bază ale tehnologiei informatice - acesta este un sistem binar. Acesta este cel mai jos nivel, acestea sunt numerele cu care funcționează computerul. Și veți învăța cum să transferați dintr-un sistem
Tabelul 1 - Reprezentarea numerelor în diverse sisteme
calcul (început)
Sisteme numerice |
||||
Zecimal |
Binar |
Octal |
hexazecimal |
BCD |
Pentru a converti din zecimal în binar, aveți două opțiuni.
1) De exemplu, numărul 37 trebuie convertit din sistemul zecimal în sistemul binar, apoi trebuie să îl împărțiți la două și apoi să verificați restul diviziunii. Dacă restul este impar, atunci scriem unul în partea de jos și următorul ciclu de împărțire trece printr-un număr par dacă restul împărțirii este par, atunci scriem zero. La sfârșit trebuie să obțineți 1. Și acum convertim rezultatul rezultat în binar, iar numărul merge de la dreapta la stânga.
Pas cu pas: 37 este un număr impar, ceea ce înseamnă 1 , apoi 36/2 = 18. Numărul este par, ceea ce înseamnă 0. 18/2 = 9 este un număr impar, ceea ce înseamnă 1 , apoi 8/2 = 4. Numărul este par, citiți 0. 4/2 = 2, un număr par înseamnă 0, 2/2 = 1.
Deci am primit numărul. Nu uitați să numărați de la dreapta la stânga: 100101 - acum avem un număr în sistemul binar. În general, aceasta este scrisă ca o diviziune într-o coloană, așa cum vedeți în figura de mai jos:
2) Dar există o a doua cale. Îmi place mai mult de el. Transferul de la un sistem la altul se face după cum urmează:
unde ai este a i-a cifră a numărului;
k - numărul de cifre din partea fracționată a numărului;
m - numărul de cifre din partea întreagă a numărului;
N este baza sistemului numeric.
Baza sistemului numeric N arată de câte ori „greutatea” cifrei i-a este mai mare decât „greutatea” (i-1) a cifrei. Partea întreagă a numărului este separată de partea fracțională printr-un punct (virgulă).
Partea întreagă a numărului AN1, cu baza N1, este convertită în sistemul numeric cu baza N2 prin împărțirea secvențială a părții întregi a numărului AN1 la baza N2 scrisă ca număr cu baza N1, până când un rest este Partea rezultată este din nou împărțită la baza N2 și acest proces trebuie să se repete până când particula devine mai mică decât divizorul. Resturile rezultate din împărțire și ultima parte sunt scrise în ordinea inversă obținută în timpul împărțirii. Numărul generat va fi un întreg cu baza N2.
Partea fracționată a numărului AN1, cu baza N1, este convertită într-un sistem numeric cu baza N2 prin înmulțirea secvențială a părții fracționale a numărului AN1 cu baza N2, scrisă ca număr cu baza N1. La fiecare înmulțire, partea întreagă a produsului este luată sub forma următoarei cifre a cifrei corespunzătoare, iar partea fracțională a restului este luată ca o nouă înmulțire. Numărul de înmulțiri determină capacitatea de cifre a rezultatului rezultat, reprezentând partea fracțională a numărului AN1 în sistemul numeric N2. Partea fracționară a unui număr este adesea reprezentată incorect atunci când este tradusă.
Să facem asta cu un exemplu:
Convertiți din zecimal în binar
37 în zecimală trebuie convertit în binar. Să lucrăm cu grade:
2 0 = 1
2 1 = 2
2 2 = 4
2 3 = 8
2 4 = 16
2 5 = 32
2 6 = 64
2 7 = 128
2 8 = 256
2 9 = 512
2 10 = 1024 și așa mai departe... la infinit
Aceasta înseamnă: 37 - 32 = 5. 5 - 4 = 1. Răspunsul este următorul în binar: 100101.
Să convertim numărul 658 din zecimal în binar:
658-512=146
146-128=18
18-16=2. În sistemul binar, numărul va arăta astfel: 1010010010.
Conversia de la zecimal la octal
Dacă trebuie să convertiți din zecimal în octal, trebuie mai întâi să convertiți în binar, apoi să convertiți din binar în octal. Adică, este mai ușor astfel, deși îl poți traduce imediat. Folosind un algoritm similar cu cel pentru conversia în binar, vezi mai sus.
Convertiți de la zecimal la hexazecimal
Dacă trebuie să convertiți din zecimal în hexazecimal, trebuie mai întâi să convertiți în binar și apoi să convertiți din binar în hexazecimal. Adică, este mai ușor astfel, deși îl poți traduce imediat. Folosind un algoritm similar cu cel pentru conversia în binar, vezi mai sus.
Conversia de la binar la octal
Pentru a converti un număr din binar în octal, trebuie să împărțiți binarul în trei numere.
De exemplu, numărul rezultat 1010010010 este împărțit în trei numere, iar împărțirea merge de la dreapta la stânga: 1.010.010.010 = 1222. Vezi tabelul de la început.
Conversia din binar în hexazecimal
Pentru a converti un număr din binar în hexazecimal, trebuie să-l împărțiți în tetrade (patru fiecare)
10 1001 0010 = 292
Iată câteva exemple pe care să le cercetați:
Conversia se face din binar în octal, apoi în hexazecimal și apoi din binar în zecimal
(2) = 11101110
(8) = 11 101 110 = 276
(16) = 1110 1110 = EE
(10) = 1*128+ 1*64+ 1*32+ 0 +1*8 + 1*4 + 1*2+ 0= 238
3) (8) = 657
Conversia se realizează din hexazecimal în binar, apoi în octal și apoi din binar în zecimal
(16) = 6E8
(2) = 110 1110 1000
(8) = 11 011 101 000 = 2250
(10) = 1*1024+1*512+ 0 +1*128+ 1*64+ 1*32+ 8 = 1768
Nota 1 Dacă doriți să convertiți un număr dintr-un sistem numeric în altul, atunci este mai convenabil să îl convertiți mai întâi în sistemul numeric zecimal și abia apoi să îl convertiți din sistemul numeric zecimal în orice alt sistem numeric. Reguli pentru conversia numerelor din orice sistem numeric în zecimalÎn tehnologia de calcul care utilizează aritmetica mașină, conversia numerelor dintr-un sistem numeric în altul joacă un rol important. Mai jos dăm regulile de bază pentru astfel de transformări (traduceri). Când convertiți un număr binar într-o zecimală, trebuie să reprezentați numărul binar ca un polinom, fiecare element fiind reprezentat ca produsul unei cifre a numărului și puterea corespunzătoare a numărului de bază, în acest caz $2$, și apoi trebuie să calculați polinomul folosind regulile aritmeticii zecimale: $X_2=A_n \cdot 2^(n-1) + A_(n-1) \cdot 2^(n-2) + A_(n-2) \cdot 2^(n-3) + ... + A_2 \cdot 2^1 + A_1 \cdot 2^0$ Figura 1. Tabelul 1 Exemplul 1 Convertiți numărul $11110101_2$ în sistemul numeric zecimal. Soluţie. Folosind tabelul dat de $1$ puteri ale bazei $2$, reprezentăm numărul ca polinom: $11110101_2 = 1 \cdot 27 + 1 \cdot 26 + 1 \cdot 25 + 1 \cdot 24 + 0 \cdot 23 + 1 \cdot 22 + 0 \cdot 21 + 1 \cdot 20 = 128 + 6 + 6 + 2 + 0 + 4 + 0 + 1 = 245_(10)$ Pentru a converti un număr din sistemul de numere octale în sistemul de numere zecimal, trebuie să îl reprezentați ca un polinom, fiecare element fiind reprezentat ca produsul unei cifre a numărului și puterea corespunzătoare a numărului de bază, în acest caz $8$, iar apoi trebuie să calculați polinomul conform regulilor aritmeticii zecimale: $X_8 = A_n \cdot 8^(n-1) + A_(n-1) \cdot 8^(n-2) + A_(n-2) \cdot 8^(n-3) + ... + A_2 \cdot 8^1 + A_1 \cdot 8^0$ Figura 2. Tabelul 2 Exemplul 2 Convertiți numărul $75013_8$ în sistemul numeric zecimal. Soluţie. Folosind tabelul dat de $2$ puteri ale bazei $8$, reprezentăm numărul ca polinom: $75013_8 = 7\cdot 8^4 + 5 \cdot 8^3 + 0 \cdot 8^2 + 1 \cdot 8^1 + 3 \cdot 8^0 = 31243_(10)$ Pentru a converti un număr din hexazecimal în zecimal, trebuie să îl reprezentați ca un polinom, fiecare element fiind reprezentat ca produsul unei cifre a numărului și puterea corespunzătoare a numărului de bază, în acest caz $16$, apoi trebuie să calculați polinomul conform regulilor aritmeticii zecimale: $X_(16) = A_n \cdot 16^(n-1) + A_(n-1) \cdot 16^(n-2) + A_(n-2) \cdot 16^(n-3) + . .. + A_2 \cdot 16^1 + A_1 \cdot 16^0$ Figura 3. Tabelul 3 Exemplul 3 Convertiți numărul $FFA2_(16)$ în sistemul numeric zecimal. Soluţie. Folosind tabelul dat de $3$ puteri ale bazei $8$, reprezentăm numărul ca un polinom: $FFA2_(16) = 15 \cdot 16^3 + 15 \cdot 16^2 + 10 \cdot 16^1 + 2 \cdot 16^0 =61440 + 3840 + 160 + 2 = 65442_(10)$ Reguli pentru conversia numerelor din sistemul numeric zecimal în altul
Exemplul 4 Convertiți numărul $22_(10)$ în sistemul numeric binar. Soluţie: Figura 4. $22_{10} = 10110_2$
Exemplul 5 Convertiți numărul $571_(10)$ în sistemul de numere octale. Soluţie: Figura 5. $571_{10} = 1073_8$
Exemplul 6 Convertiți numărul $7467_(10)$ în sistem numeric hexazecimal. Soluţie: Figura 6. $7467_(10) = 1D2B_(16)$ Pentru a converti o fracție adecvată dintr-un sistem de numere zecimal într-un sistem de numere non-zecimal, este necesar să înmulțiți secvențial partea fracțională a numărului convertit cu baza sistemului în care trebuie convertit. Fracțiile din noul sistem vor fi reprezentate ca părți întregi de produse, începând cu prima. De exemplu: $0,3125_((10))$ în sistemul de numere octale va arăta ca $0,24_((8))$. În acest caz, puteți întâmpina o problemă când o fracție zecimală finită poate corespunde unei fracțiuni infinite (periodice) în sistemul numeric non-zecimal. În acest caz, numărul de cifre din fracția reprezentată în noul sistem va depinde de precizia necesară. De asemenea, trebuie remarcat faptul că numerele întregi rămân numere întregi, iar fracțiile proprii rămân fracții în orice sistem numeric. Reguli pentru conversia numerelor dintr-un sistem de numere binar în altul
Figura 7. Tabelul 4 Exemplul 7 Convertiți numărul $1001011_2$ în sistemul de numere octale. Soluţie. Folosind tabelul 4, convertim numărul din sistemul numeric binar în octal: $001 001 011_2 = 113_8$
Metode de conversie a numerelor dintr-un sistem numeric în altul. Conversia numerelor dintr-un sistem de numere pozițional în altul: conversia numerelor întregi. Pentru a converti un număr întreg dintr-un sistem numeric cu baza d1 în altul cu baza d2, trebuie să împărțiți secvențial acest număr și coeficientii rezultați la baza d2 a noului sistem până când obțineți un cât mai mic decât baza d2. Ultimul cât este cea mai semnificativă cifră a unui număr din noul sistem numeric cu baza d2, iar cifrele care îl urmează sunt resturi din împărțire, scrise în ordinea inversă a primirii lor. Efectuați operații aritmetice în sistemul numeric în care este scris numărul care este tradus. Exemplul 1. Convertiți numărul 11(10) în sistemul numeric binar. Răspuns: 11(10)=1011(2). Exemplul 2. Convertiți numărul 122(10) în sistemul numeric octal.
Exemplul 3. Convertiți numărul 500(10) în sistem numeric hexazecimal.
Conversia numerelor dintr-un sistem de numere pozițional în altul: conversia fracțiilor proprii. Pentru a converti o fracție adecvată dintr-un sistem numeric cu baza d1 într-un sistem cu baza d2, este necesar să se înmulțească secvențial fracția originală și părțile fracționale ale produselor rezultate cu baza noului sistem de numere d2. Fracția corectă a unui număr în noul sistem numeric cu baza d2 se formează sub formă de părți întregi ale produselor rezultate, începând de la primul. Atunci când traduceți numere mixte, este necesar să traduceți separat părțile întregi și fracționale într-un nou sistem conform regulilor de traducere a numerelor întregi și fracțiilor proprii și apoi să combinați ambele rezultate într-un număr mixt în noul sistem de numere. Exemplul 1. Convertiți numărul 0,625(10) în sistemul numeric binar.
Exemplul 2. Convertiți numărul 0,6(10) în sistemul de numere octale.
Exemplul 2. Convertiți numărul 0,7(10) în sistem numeric hexazecimal.
Convertiți numere binare, octale și hexazecimale în sistem numeric zecimal. Pentru a converti un număr din sistemul P-ary într-unul zecimal, trebuie să utilizați următoarea formulă de expansiune: Exemplu 1. Convertiți numărul 101.11(2) în sistemul numeric zecimal. Răspuns: 101.11(2)= 5.75(10) . Exemplul 2. Convertiți numărul 57.24(8) în sistemul numeric zecimal. Răspuns: 57,24(8) = 47,3125(10) . Exemplul 3. Convertiți numărul 7A,84(16) în sistemul numeric zecimal. Răspuns: 7A.84(16)= 122,515625(10) . Conversia numerelor octale și hexazecimale în sistemul numeric binar și invers. Pentru a converti un număr din sistemul de numere octale în binar, fiecare cifră a acestui număr trebuie scrisă ca un număr binar de trei cifre (triada). Exemplu: scrieți numărul 16.24(8) în sistemul numeric binar.
Pentru a converti un număr binar înapoi în sistemul de numere octale, trebuie să împărțiți numărul original în triade la stânga și la dreapta punctului zecimal și să reprezentați fiecare grup cu o cifră în sistemul de numere octale. Triadele extreme incomplete sunt completate cu zerouri. Exemplu: scrieți numărul 1110.0101(2) în sistemul de numere octale.
Pentru a converti un număr din sistemul numeric hexazecimal în binar, trebuie să scrieți fiecare cifră a acestui număr ca un număr binar de patru cifre (tetradă). Exemplu: scrieți numărul 7A,7E(16) în sistemul numeric binar. Notă: zerourile de început în stânga pentru numere întregi și în dreapta pentru fracții nu sunt scrise. Pentru a converti un număr binar înapoi în sistemul numeric hexazecimal, trebuie să împărțiți numărul original în tetrade la stânga și la dreapta punctului zecimal și să reprezentați fiecare grup cu o cifră în sistemul numeric hexazecimal. Triadele extreme incomplete sunt completate cu zerouri. Exemplu: scrieți numărul 1111010.0111111(2) în sistemul numeric hexazecimal. 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 leagă 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.
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).
Bună ziua, vizitator al site-ului! Continuăm să studiem protocolul nivelului 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 trebuie să fie capabil să convertească numerele din binar în zecimal și invers în capul său. Mai mult decât atât, rareori cineva știe să facă acest lucru mental, profesorii diferitelor cursuri pe rețelele 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 numereSă î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:
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 acestoraExistă 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 binarSă 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 rapid mod 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. 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 zecimalConversia 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 28. 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 binareSă ne uităm acum la operatii care pot fi efectuate asupra numerelor binare. Să începem cu operații aritmetice simple și apoi să trecem la operații de algebră booleană. Adăugarea numerelor binareAdă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. 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ă.
Puteți verifica cu un calculator, 1000110 în binar este 70 în zecimală. Scăderea numerelor binareImediat 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 binareRă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:
Î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 ANDOperaț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.
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 SAUOperaț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.
Operație exclusivă OR sau XOROperaț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. |