Sisteme de numeratie



Pentru  a  găzdui  multitudinea  de  numere  cu  care  s-a  întâlnit  omenirea  a  construit  monumente  considerabile: sistemele  de  numeraţie.  Universul  numerelor  posedă  particularităţi  care  îl  fac  unic  printre  toate  creaţiile  umane. 


SISTEME DE NUMERATIE
Se numeste sistem de numeratie, o multime finita de simboluri (sau cifre) si de reguli folosite pentru reprezentarea unui numar. Un sistem de numeratie pozitional este un sistem de numeratie la care aportul unei cifre în valoarea totala a unui numar depinde atât de valoarea cifrei, cât si de locul ocupat de cifra în reprezentarea numarului respectiv. Sistemul de numeratie arab este un sistem de numeratie pozitional, spre deosebire de sistemul de numeratie roman care nu este un sistem pozitional.
Sistemul de numeratie binar
Sistemele de numeratie folosite de catre utilizatorii de calculatoare, în afara de sistemul zecimal, sunt: sistemul binar, sistemul octal si sistemul hexazecimal. Sistemul binar este sistemul  de numeratie în care lucreaza calculatoarele electronice, datorita faptului ca nu are decât doua cifre, ceea ce duce la o implementare usoara a calculelor în hardware. Sistemele de numeratie octal si hexazecimal sunt folosite deoarece comprima sirurile lungi de biti din reprezentarea unui numar în baza 2, iar conversia din baza 2 in baza 8 sau 16, 747f59h si invers, se face foarte usor, fara calcule laborioase.


INTERDEPENDENTA SISTEMELOR DE NUMERATIE
Desi sistemul binar este cel utilizat pentru stocarea si prelucrarea datelor intr-un calculator electronic, atat redarea scrisa cat si cea orala este greoaie din cauza numarului mare de cifre necesare pentru a exprima chiar valori relativ mici. Acesta este motivul pentru care se folosesc in mod curent sisteme de numeratie cu baze mai mari, dar care permit trecerea imediata in binar, conditie a oricarui sistem la care baza este o putere naturala a lui 2.
Cele mai utilizate sisteme, din acest punct de vedere, sunt sistemul octal (cu baza 8) si sistemul hexagesimal - pe scurt "hexa"- (cu baza 16). Pentru ca 8 = 23 si 16 = 24 , orice cifra octala se poate reprezenta printr-o combinatie de 3 cifre binare si orice cifra hexa, printr-o combinatie de 4 cifre binare.
Asadar, sistemul octal utilizeaza cifrele 0,1,2,3,4,5,6,7. Pentru a reprezenta cele 16 cifre ale sistemului hexagesimal sunt necesare 16 semne grafice distincte: primele 10 dintre acestea coincid cu cifrele sistemului zecimal, iar pentru restul de 6 se folosesc primele litere ale alfabetului latin (A,B,C,D,E,F).



Stim urmatoarea regula de reprezentare a unui numar zecimal:1234= 1*103+2*102+3*10+4



Trecerea din sistemul binar in sistemele octal, zecimal si hexa
Trecerea din sistemul binar in sistemul octal
Pentru trecerea unui numar scris in sistemul binar la echivalentul sau scris in octal se procedeaza astfel: se grupeaza cifrele binare in grupe de cate 3 incepand cu prima cifra din dreapta dupa care pentru fiecare grup se cauta in tabelul 1, pe coloana corespunzatoare sistemului binar, combinatia respectiva dupa care, de pe acelasi rand din coloama sistemului octal se extrage cifra corespondenta.
De exemplu, numarul 11010 se scrie 011 010. In tabelul 1 se cauta in coloana sistemului binar randul pe care se gaseste combinatia 011; pe acelasi rand in coloana sistemului octal se afla cifra 3. Similar, pentru combinatia 010 se gaseste cifra 2, astfel ca numarul octal echivalent numarului binar 11010 este 32.
 11010(2) = 32(8)
Prin aceeasi metoda se poate trece si numarul 10110011(2)
10110011(2) = 010 110 011(2) = 263(8)
            Trecerea din sistemul binar in sistemul zecimal
Trecerea din sistemul binar in sistemul zecimal se face utilizand relatia

si tabelul 1 in care sunt trecute valorile in zecimal ale puterilor bazelor sistemelor de numeratie binar, octal si hexagesimal.
Pentru numarul 11010(2) trecerea se face astfel:

11010(2) = 1x24 +1x23 +0x 22 +1 x 21 + 0x20 = 16+8+0+2+0 = 26(10)
iar pentru numarul 10110011(2) se obtine:
10110011(2) = 1 x 27 + 0 x 26 + 1 x 25 + 1 x 24 + 0 x 23 + 0 x 22 + 1 x 21 + 1 x 20 =  128+ 32 + 16+ 2+ 1= 179(10)
Trecerea din sistemul binar in sistemul hexazecimal
Pentru trecerea unui numar scris in sistemul binar la echivalentul sau scris in hexagesimal se procedeaza astfel: se grupeaza cifrele binare in grupe de cate 4 incepand cu prima cifra din dreapta dupa care, pentru fiecare grup, se cauta in tabelul 1, pe coloana corespunzatoare sistemului binar, combinatia respectiva dupa care, de pe acelasi rand din coloana sistemului hexagesimal se extrage cifra corespondenta.
Numarul 11010 in sistemul binar se scrie 1 1010 si din tabelul 1 se extrag valorile 1 si A deci:
11010(2) = 11010(2)  = lA(16)
Pentru celalalt numar se obtine:
10110011(2) =10110011(2) =B3(16)
Tabelul 2-Valorile in zecimal ale puterilor bazelor sistemelor de numeratie binar, octal si hexazecimal
Puterea
Baza
2
8
16
0
1
1
1
1
2
8
16
2
4
64
256
3
8
512
4096
4
16
4096
65536
5
32
32768
1048576
6
64
262144
16777216
7
128
2097152
268435456
8
256
16777216

9
512
134217728

10
1024


Trecerea din sistemul octal in sistemele binar, zecimal sau hexa
Procedeele de trecere din sistemul octal in celelalte 3 sisteme de numeratie.
Trecerea din sistemul octal in sistemul binar
Aceasta operatie se face inlocuind fiecare cifra octala cu grupul corespunzator de 3 cifre binare:
3657(8) = 011 110 101 111(2) = 11110101111(2)
Trecerea din sistemul octal in sistemul zecimal
Pentru efectuarea acestei treceri se utilizeaza relatia de baza
baza de numeratie fiind 8:
263(8) = 2 x 82 +6x81 +3 x 80 = 128+48+3=179(10)
sau
3657(8) = 3x83 +6x82 + 5x 81 +7x80 = 1536+384+40+ 7 = 1967(10)
Trecerea din sistemul octal in sistemul hexazecimal
Trecerea din sistemul octal in sistemul hexagesimal se face prin intermediul sistemului binar de nurneratie adica se trece mai intai (ca in exemplul de mai sus) in sistemul binar de numeratie iar de aici, prin intermediul grupelor de cate 4 cifre binare, la sistemul de numeratie hexagesimal:
3657(8) = 011110 101111(2) = 11110101111(2) = 7af(16) = 7 AF(16)
sau, un alt exemplu
713(8) = 111 001 011(2) = 0001 1100 1011(2) = 1CB(16)
Trecerea din sistemul zecimal in sistemele binar, octal sau hexagesimal
Pentru trecerea din sistemul zecimal in unul dintre sistemele binar, octal sau hexagesimal este necesar sa se gaseasca cifrele care inmultesc fiecare putere naturala a bazei sistemului respectiv. In acest scop se poate aplica urmatorul procedeu:
  • Se imparte cu rest (impartire intreaga) numarul zecimal dat, la baza sistemului in care se face trecerea;
  • Catul obtinut in pasul precedent se imparte, de asemenea cu rest, la aceeasi baza, repetand aceste impartiri pana se obtine catul zero;
  • Resturile rezultate in urma impartirilor succesive, luate in ordinea inversa obtinerii lor si scrise de la stanga la dreapta, constituie cifrele numarului cautat.
Trecerea din sistemul zecimal in sistemul binar
Pentru reprezentarea numarului 179(10) in binar se procedeaza astfel:
179 : 2 = 89 rest 1
89 : 2 = 44 rest 1
44 : 2 = 22 rest 0
22 : 2 = 11 rest 0
11 : 2 = 5 rest 1
 5 : 2 = 2 rest 1
2 : 2 = 1 rest 0
1 : 2 = 0 rest 1
Numarul cautat este 10110011 (2);
Trecerea din sistemul zecimal in sistemul octal
Reprezentarea numarului 3817(10)  in octal:
3817 : 8 = 477 rest 1
 477 : 8 = 59 rest 5
59 : 8 = 7 rest 3
7 : 8 = 0 rest 7
Numarul cautat este 7351(8)
Trecerea din sistemul zecimal in sistemul hexagesimal
Reprezentarea numarului 51434(10)  in hexazecimal:
51434:16= 3214 rest 10 =A(16) 
3214 : 16 = 200 rest 14 = E(16)
 200 : 16 = 12 rest 08 = 8(16) 
12 : 16 = 0 rest 12 = C(16) 
Numarul cautat este C8EA(16) 
Trecerea din sistemul hexagesimal in sistemele binar, octal sau zecimal
Trecerea din sistemul hexagesimal in sistemul binar
Pentru a trece din hexagesimal in binar, se va inlocui fiecare cifra hexagesimala cu grupul de 4 cifre binare corespunzatoare:

5CA(16)  = 0101 1100 1010(2)  = 10111001010(2) 
Trecerea din sistemul hexagesimal in sistemul octal
Aceasta transfromare se face, ca si in cazul trecerii din octal in hexagesimal, prin intermediul sistemului de numeratie binar, adica:

A1FB(16)  = 1010 0001 1111 1011(2)  = 001 010 000 111 111 011(2)  = 120773(8) 
Trecerea din sistemul hexagesimal in sistemul zecimal
Operatia de trecere se realizeaza prin intermediul relatiei:
C8EA(16)  = 12 x 163 + 8 x 162 + 14 x 161 + 10 x 160 =
                = 12 x 4096 + 8 x 256 + 14 x 16 + 10 =
                = 51434(10) 
OPERATII ARITMETICE IN SISTEME DE NUMERATIE UZUALE
Dupa cum era de asteptat, operatiile aritmetice, cunoscute inca din clasele primare, din sistemul zecimal se pot efectua in oricare sistem de numeratie prin adaptarea regulilor de calcul general valabile la specificul fiecarui sistem in parte.
Astfel, in sistemul zecimal, 10 - 1 = 9. Nu acelasi lucru se intampla in celelalte sisteme de numeratie, pentru ca baza este alta:
- in binar: 10(2)  - 1(2)  = 1(2) 
- in octal: 10(8)  - 1(8)  = 7(8) 
- in hexagesimal: 10(16)  - 1(16)  = F(16) 
si, evident
- in binar: 1(2)  + 1(2)  = 10(2)   
- in octal: 1(8)  + 7(8)  = 10(8) 
- in hexagesimal: 1(16)  + F(16)  = 10(16)

Poate fi imaginata si o tabla a inmultirii pentru sistemele binar, octal sau hexagesimal.
Tinand cant de faptul ca cele mai frecvente operatii sunt cele de adunare si scadere, in continuare se vor prezenta exemple numai cu aceste operatii. Pentru efectuarea unei adunari sau scaderi cu numere formate din mai multe cifre, se va proceda conform celor cunoscute din primele ore de aritmetica, adica plasand cele doua numere unul sub celalalt si efectuand operatia respectiva pe coloana, din dreapta spre stanga, "transportand" la coloana din stanga eventualele "depasiri" ale pozitiei curente.
Adunarea a doua numere in sistemul binar
Sa se calculeze 10110110(2)  + 1100011(2)
10110110 +
  1100011  
          100011001
Calculand pentru fiecare pozitie, de la dreapta la stanga, avem:
0+1=1;
1+1 =10, deci se scrie 0 iar 1 se aduna la pozitia din stanga;
1+1+0=10, deci se scrie 0 iar 1 se aduna la pozitia din stanga;
1+0+0=1 ... ...
Adunarea a doua numere in sistemul octal
Sa se calculeze 37764(8)  + 51432(8)   
37764 +
            51432
          111416
Operatiile se desfasoara similar celor aratate la exemplul precedent:
4+2=6;
6+3=11;
1+7+4=14;
1+7+1=11;
1+3+5=11 ... ...
Adunarea a doua numere in sistemul hexagesimal
Sa se calculeze A3 8C(16) + 6B28(16)
A38C +
            6B28
         10EB4
Succesiunea calculelor:
C+8=14;
1+8+2=B;
3+B=E;
A+6=10.
Scaderea a doua numere in sistemul binar
Sa se calculeze 100011001(2) - 1100011(2)
100011001 -
                1100011
  10110110
Si aici calculul se face incepand cu prima pozitie din dreapta si continuand apoi spre stanga:
Pozilia 1: 1-1=0; .
Pozilia 2: 100-1=011, deci in pozitiile 4 si 3 din primul numar avem acum 01 in loc de 10; Pozilia 3: 1-0=1;
Pozilia 4: 0-0=0 ... ...
Scaderea a doua numere in sistemul octal
Sa se calculeze 111416(8) - 51432(8)
      111416 -
                    51432
        37764
Succesiunea calculelor:
6-2=4;
41-3=36;
13-4=7;
10-1=7;
10-5=3
Scaderea a doua numere in sistemul hexagesimal
Sa se calculeze A38C(16) - 6B98(16)
         A38C -
                     6B98
         37F4
Succesiunea calculelor:
C-8=4;
38-9=2F;
A2-B=97;
9-6=3
 Reprezentarea unor numere in diferite baze
 
Sistemul
Binar
Octal
Hexa
Zecimal
0000
0
0
0
0001
1
1
1
0010
2
2
2
0011
3
3
3
0100
4
4
4
0101
5
5
5
0110
6
6
6
0111
7
7
7
1000
10
8
8
1001
11
9
9
1010
12
A
10
1011
13
B
11
1100
14
C
12
1101
15
D
13
1110
16
E
14
1111
17
F
15

Комментариев нет:

Отправить комментарий