3.2. CONVERSIUNEA NUMERELOR DINTR-UN SISTEM ÎN ALTUL
Deși sistemul binar este cel utilizat pentru stocarea și prelucrarea datelor într-un calculator electronic, atît redarea scrisă cît și cea orală este greoaie din cauza numărului mare de cifre necesare pentru a exprima chiar valori relativ mici. Acesta este motivul pentru care se folosesc în mod curent sisteme de numerație cu baze mai mari, dar care permit trecerea imediată în binar, condiție a oricărui sistem la care baza este o putere naturală a lui 2.
Cele mai utilizate sisteme, din acest punct de vedere, sunt sistemul octal (cu baza 8) și sistemul hexazecimal - pe scurt "hexa"- (cu baza 16). Pentru ca 8 = 23 și 16 = 24 , orice cifră octală se poate reprezenta printr-o combinație de 3 cifre binare și orice cifră hexa, printr-o combinație de 4 cifre binare.
Așadar, sistemul octal utilizează cifrele 0,1,2,3,4,5,6,7. Pentru a reprezenta cele 16 cifre ale sistemului hexazecimal 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).
In tabelul 1 este prezentată echivalenta dintre sistemele binar, octal, hexazecimal și zecimal. Cu ajutorul datelor din acest tabel, trecerea din sistemul binar în unul dintre sistemele octal sau hexazecimal se face imediat, grupînd corespunzător cifrele binare ale numărului și înlocuind fiecare grupă cu cifra octală sau hexa pe care o reprezintă.
Tabelul 1-Echivalența principalelor sisteme de numerație ale computerelor
Trecerea din sistemul binar în sistemele octal, zecimal și hexa
Trecerea din sistemul binar în sistemul octal
Pentru trecerea unui numar scris în sistemul binar la echivalentul său scris în octal se procedează astfel: se grupează cifrele binare în grupe de cîte 3 începînd cu prima cifră din dreapta după care pentru fiecare grup se caută în tabelul 1, pe coloana corespunzatoare sistemului binar, combinația respectivă dupa care, de pe același rînd din coloana sistemului octal se extrage cifra corespondentă.
De exemplu, numărul 11010 se scrie 011 010. In tabelul 1 se caută în coloana sistemului binar rîndul pe care se gasește combinația 011; pe același rînd în coloana sistemului octal se află cifra 3. Similar, pentru combinația 010 se gasește cifra 2, astfel ca numarul octal echivalent numarului binar 11010 este 32.
11010(2) = 32(8)
Prin aceeași metodă se poate trece și numărul 10110011(2)
10110011(2) = 010 110 011(2) = 263(8)
Trecerea din sistemul binar în sistemul zecimal
Trecerea din sistemul binar în sistemul zecimal se face utilizînd relația
și tabelul 1 în care sunt trecute valorile în zecimal ale puterilor bazelor sistemelor de numerație binar, octal și hexazecimal.
Pentru numărul 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 numărul 10110011(2) se obține:
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 număr scris în sistemul binar la echivalentul sau scris în hexazecimal se procedează astfel: se grupează cifrele binare în grupe de cîte 4 începînd cu prima cifră din dreapta dupa care, pentru fiecare grup, se caută în tabelul 1, pe coloana corespunzatoare sistemului binar, combinația respectivă dupa care, de pe același rînd din coloana sistemului hexazecimal se extrage cifra corespondentă.
Numărul 11010 în sistemul binar se scrie 1 1010 și din tabelul 1 se extrag valorile 1 și A deci:
11010(2) = 11010(2) = lA(16)
Pentru celălalt număr se obține:
10110011(2) =10110011(2) =B3(16)
Tabelul 2-Valorile în zecimal ale puterilor bazelor sistemelor de numerație binar, octal și hexazecimal
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
|
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 în sistemele binar, zecimal sau hexa
Procedeele de trecere din sistemul octal în celelalte 3 sisteme de numerație.
Trecerea din sistemul octal în sistemul binar
Această operaițe se face înlocuind fiecare cifră octală cu grupul corespunzător de 3 cifre binare:
3657(8) = 011 110 101 111(2) = 11110101111(2)
Trecerea din sistemul octal în sistemul zecimal
Pentru efectuarea acestei treceri se utilizează relația de bază
baza de numerație 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 în sistemul hexazecimal
Trecerea din sistemul octal în sistemul hexazecimal se face prin intermediul sistemului binar de numerație adică se trece mai întîi (ca în exemplul de mai sus) în sistemul binar de numeraițe iar de aici, prin intermediul grupelor de cîte 4 cifre binare, la sistemul de numerație hexazecimal:
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 în sistemele binar, octal sau hexazecimal
Pentru trecerea din sistemul zecimal în unul dintre sistemele binar, octal sau hexazecimal este necesar să se găsească cifrele care înmulțesc fiecare putere naturală a bazei sistemului respectiv. In acest scop se poate aplica următorul procedeu:
· Se împarte cu rest (împărțire întreaga) numărul zecimal dat, la baza sistemului în care se face trecerea;
· Cîtul obținut în pasul precedent se împarte, de asemenea cu rest, la aceeași bază, repetînd aceste împărțiri pînă se obține cîtul zero;
· Resturile rezultate în urma împărțirilor succesive, luate în ordinea inversă obținerii lor și scrise de la stînga la dreapta, constituie cifrele numărului căutat.
Trecerea din sistemul zecimal în sistemul binar
Pentru reprezentarea numărului 179(10) în binar se procedează 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 căutat este 10110011 (2);
Trecerea din sistemul zecimal în sistemul octal
Reprezentarea numărului 3817(10) în octal:
3817 : 8 = 477 rest 1
477 : 8 = 59 rest 5
59 : 8 = 7 rest 3
7 : 8 = 0 rest 7
Numărul căutat este 7351(8)
Trecerea din sistemul zecimal în sistemul hexazecimal
Reprezentarea numărului 51434(10) în 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)
Numărul căutat este C8EA(16)
Trecerea din sistemul hexazecimal în sistemele binar, octal sau zecimal
Trecerea din sistemul hexazecimal în sistemul binar
Pentru a trece din hexazecimal în binar, se va înlocui fiecare cifră hexazecimală cu grupul de 4 cifre binare corespunzătoare:
5CA(16) = 0101 1100 1010(2) = 10111001010(2)
Trecerea din sistemul hexazecimal în sistemul octal
Această transfromare se face, ca și în cazul trecerii din octal în hexazecimal, prin intermediul sistemului de numerație binar, adică:
A1FB(16) = 1010 0001 1111 1011(2) = 001 010 000 111 111 011(2) = 120773(8)
Trecerea din sistemul hexazecimal în sistemul zecimal
Operația de trecere se realizează prin intermediul relației:
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)
Ultima modificare: luni, 6 iunie 2011, 19:46