În viața de zi cu zi, suntem obișnuiți să folosim sistemul numeric zecimal, pe care îl cunoaștem î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?
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.
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 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.
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.
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. De la un sistem numeric la altul, puteți converti folosind program special, și manual.
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. Recunoaștere mondială iar algoritmul a fost folosit în zorii calculatoarelor.
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 tehnologie informatică 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 numerelor din sistem zecimal numerotarea la binar.
Toate CC binar se bazează pe aplicarea numai două personaje, care se potrivesc foarte bine cu caracteristicile circuit digital. Fiecare dintre simboluri este responsabil pentru o anumită acțiune, care implică adesea două stări:
În știința în care se folosește SS, a fost introdusă o anumită terminologie, esența ei este următoarea:
Multe module percep și procesează informații în porțiuni sau cuvinte. Fiecare cuvânt are greutate diferităși poate consta din 8, 16 sau 32 de biți.
Unul dintre cei mai importanți factori 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.
Î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 din numere zecimaleîn cod binar, ceea ce implică operatii matematice.
Necesită un număr scris în formă zecimală împărțiți la 2. Continuați împărțirea până când nu mai sunt în coeficient. 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 (răman 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, scriem unul în coeficient și toate resturile secvențial în ordine 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.
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 de conversie a numărului X10 în octal constă în următorii pași:
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.
Convertiți de la zecimal la octal.
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 înseamnă 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.
Următoarea întrebare este cum se convertește din octal în notație binară numere. Convertirea numerelor din orice sistem în binar este destul de simplă. Un asistent în această chestiune este tabel pentru sistemele numerice.
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.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:
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 numeric binar în octal (hexazecimal), trebuie să împărțiți punctul zecimal la dreapta și la stânga număr binarî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
La transferul la sistem hexazecimal este necesar 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
Conversia numerelor de la 2, 8 și 16 în sistemul zecimal se realizează 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 numărului său de serie în numărul care este convertit. Î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 dreaptă 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.
Tabelul de corespondență al sistemului numeric: | Tabel pentru conversia în sistemul numeric hexazecimal |
0000 | 0 |
0001 | 1 |
0010 | 2 |
0011 | 3 |
0100 | 4 |
0101 | 5 |
0110 | 6 |
0111 | 7 |
1000 | 8 |
1001 | 9 |
1010 | SS binar |
1011 | SS hexazecimal |
1100 | O |
1101 | B |
1110 | C |
1111 | D |
E F Tabel pentru conversie în
sistem octal
socoteala
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
tehnologie informatică , folosind aritmetica mașină, un rol important îl joacă conversia numerelor dintr-un sistem numeric în altul. Mai jos dăm regulile de bază pentru astfel de transformări (traduceri). Când convertiți un număr binar într-o zecimală, este necesar să se reprezinte numărul binar ca un polinom, fiecare element al căruia este reprezentat ca produsul unei cifre a numărului și puterea corespunzătoare a numărului de bază, în
î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 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.
Exemplul 1 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.
Exemplul 1 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)$
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 numeric octal.
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 care este convertit cu baza sistemului în care trebuie convertit. Fracție în sistem nou vor fi prezentate sub forma unor părți întregi de lucrări, î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.
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$
Pentru a converti rapid numerele din sistemul numeric zecimal în sistemul binar, trebuie să aveți o bună cunoaștere a numerelor „2 la putere”. De exemplu, 2 10 =1024 etc. Acest lucru vă va permite să rezolvați câteva exemple de traducere literalmente în câteva secunde. Una dintre aceste sarcini este Problema A1 din demonstrația USE 2012. Desigur, puteți lua un timp lung și obositor pentru a împărți un număr la „2”. Dar este mai bine să decideți diferit, economisind timp prețios la examen.
Metoda este foarte simplă. Esenta sa este aceasta: dacă numărul care trebuie convertit din sistemul zecimal este egal cu numărul „2 la putere”, atunci acest număr din sistemul binar conține un număr de zerouri egal cu puterea. Adăugăm un „1” în fața acestor zerouri.
La fel și pentru alte numere „2 la putere”.
Dacă numărul care trebuie convertit este mai mic decât numărul „2 la putere” cu 1, atunci în sistemul binar acest număr este format numai din unități, al căror număr este egal cu puterea.
În figură, pătratele indică reprezentare binară numere, iar în stânga în roz este zecimală.
Traducerea este similară pentru alte numere „2 la puterea-1”.
Este clar că translația numerelor de la 0 la 8 se poate face rapid sau prin împărțire, sau pur și simplu cunoaștem pe de rost reprezentarea lor în sistemul binar. Am dat aceste exemple ca să înțelegeți principiul această metodăși l-a folosit pentru a traduce mai multe „numere impresionante”, de exemplu, pentru a traduce numerele 127,128, 255, 256, 511, 512 etc.
Puteți întâlni astfel de probleme atunci când trebuie să convertiți un număr care nu este egal cu numărul „2 la putere”, dar aproape de acesta. Poate fi mai mare sau mai mică de 2 la putere. Diferența dintre numărul tradus și numărul „2 la putere” ar trebui să fie mică. De exemplu, până la 3. Reprezentarea numerelor de la 0 la 3 în sistemul binar trebuie doar cunoscută fără translație.
Dacă numărul este mai mare decât , atunci îl rezolvăm astfel:
Mai întâi convertim numărul „2 la putere” în sistem binar. Și apoi adăugăm la acesta diferența dintre numărul „2 la putere” și numărul care este tradus.
De exemplu, să convertim 19 din sistemul zecimal. Ea mai mult număr„2 la putere” cu 3.
16=2 4 . 16 10 =10000 2 .
3 10 =11 2 .
19 10 =10000 2 +11 2 =10011 2 .
Dacă numărul este mai mic decât numărul „2 la putere”, atunci este mai convenabil să utilizați numărul „2 la putere-1”. O rezolvam astfel:
Mai întâi convertim numărul „2 în puterea-1” în sistem binar. Și apoi scădem din el diferența dintre numărul „2 la puterea lui 1” și numărul care este tradus.
De exemplu, să convertim 29 din sistemul zecimal. Este mai mare decât numărul „2 la puterea-1” cu 2. 29=31-2.
31 10 =11111 2 .
2 10 =10 2 .
29 10 =11111 2 -10 2 =11101 2
Dacă diferența dintre numărul care este tradus și numărul „2 la putere” este mai mare de trei, atunci puteți împărți numărul în componentele sale, puteți converti fiecare parte în sistemul binar și puteți adăuga.
De exemplu, convertiți numărul 528 din sistemul zecimal. 528=512+16. Traducem 512 și 16 separat.
512=2 9
. 512 10 =1000000000
2 .
16=2 4
. 16 10 =10000
2 .
Acum să-l adăugăm într-o coloană: