conversia numerelor scrise in baze diferite

5
http://24secunde.com Conversia numerelor scrise in baze diferite Stim urmatoarea regula de reprezentare a unui numar zecimal: 1234= 1*10 3 +2*10 2 +3*10+4 Pozitia cifrei in numar reprezinta greutatea cifrei. Urmand regula de mai sus se poate transforma usor orice numar, in orice baza, intr-un numar zecimal. 675 8 =6*8 2 +7*8 1 +5*8 0 =6*64+7*8+5=445 10 Numarul 675 in baza opt este transformat intr-un numar scris in baza 10. Rezultatul este 445 in baza 10. Regula se aplica si numerelor in baza 2 sau in orice alta baza. 1010 2 = 1*2 3 + 0*2 2 + 1*2 1 + 0*2 0 = 10 10 Plecand de la regula de mai sus in sens invers, putem transforma numere scrise in baza 10 in alte baze. Sa vedem o conversie din baza 10 in baza 8. Stim ca un numar oarecare zecimal (987650 in cazul nostru) se poate scrie astfel: 1

Upload: farcas-adrian

Post on 12-Jun-2015

13.146 views

Category:

Documents


1 download

DESCRIPTION

Transformari dintr-o baza in alta

TRANSCRIPT

Page 1: Conversia Numerelor Scrise in Baze Diferite

http://24secunde.com

Conversia numerelor scrise in baze diferite

Stim urmatoarea regula de reprezentare a unui numar zecimal:

1234= 1*103+2*102+3*10+4

Pozitia cifrei in numar reprezinta greutatea cifrei.

Urmand regula de mai sus se poate transforma usor orice numar, in orice baza, intr-un numar zecimal.

6758=6*82+7*81+5*80=6*64+7*8+5=44510

Numarul 675 in baza opt este transformat intr-un numar scris in baza 10. Rezultatul este 445 in baza 10.

Regula se aplica si numerelor in baza 2 sau in orice alta baza.

10102 = 1*23 + 0*22 + 1*21 + 0*20 = 1010

Plecand de la regula de mai sus in sens invers, putem transforma numere scrise in baza 10 in alte baze. Sa vedem o conversie din baza 10 in baza 8.

Stim ca un numar oarecare zecimal (987650 in cazul nostru) se poate scrie astfel:

98765010 = ni * 8i + … + n3 * 83 + n2 * 82 + n1 * 81 + n0 * 80

Ne dam seama ca valoarea ni * 8i nu trebuie sa depaseasca valoarea numarului zecimal 987650. Putem afla astfel puterea maxima pe care o poate primi 8i.

Sa construim un tabel cu puterile lui 8. 80 = 181 = 882 = 6483 = 512

1

Page 2: Conversia Numerelor Scrise in Baze Diferite

http://24secunde.com

84 = 409685 = 3276886 = 26214487 = 209715288 = 16777216

Vedem ca 87 > 987650. Rezulta ca numarul de mai sus poate fi scris in felul urmator:

98765010 = n6 * 86 + n5 * 85 + n4 * 84 + n3 * 83 + n2 * 82 + n1 * 81 + n0 * 80

Continuam mai departe:

987650 = 3 * 86 + 20121886 intra de 3 ori in 987650 si ramane un rest de 201218. Operatia de mai sus continua plecand de la restul ramas:

201218 = 6* 85 + 46104610 = 1 * 84 + 514514 = 1 * 83 +22 = 0 * 82 +22 = 0 * 81 +22 = 2 * 80

Putem scrie:98765010 = 3 * 86 + 6* 85 + 1 * 84 + 1 * 83 + 0 * 82 + 0 * 81 + 2 * 80 = 36110028

Metoda alternativa de conversie, prin impartire directa

Exista o metoda alternativa de conversie pe care o vom explica mai jos. 987650 : 8 = 123456 + 2123456 : 8 = 15432 + 0 15432 : 8 = 1929 + 0 1929 : 8 = 241 + 1 241 : 8 = 30 + 1 30 : 8 = 3 + 6 3 : 8 = 0 + 3

Priviti restul din partea dreapta de jos in sus. Formeaza sirul 3611002 si este tocmai numarul cautat. Este o metoda usor de folosit prin care se poate converti un numar in baza 10 in alta baza.

2

Page 3: Conversia Numerelor Scrise in Baze Diferite

http://24secunde.com

Metoda de conversie dintr-o baza oarecare in baza 10 prin inmultire

Fie numarul octal 36110028. Stim ca

36110028 = 3 * 86 + 6* 85 + 1 * 84 + 1 * 83 + 0 * 82 + 0 * 81 + 2 * 80 = 98765010

Iata cum se poate realiza conversia (este operatia inversa impartirii pe care am descris-o putin mai sus):

36110023*8=24 24+6=30 30*8=240 240+1=241 241*8=1928 1928+1= 1929 1929*8=15432 15432+0=15432 15432*8=123456

123456+0=123456 123456*8=987648

987648+2=987650

Rezultatul final este numarul cautat, numar zecimal (in baza 10).

Conversia intre baze diferite (diferite de zecimal)

Conversia dintr-un baza in alta se face de obicei in doi pasi. Se utilizeaza, in majoritatea cazurilor, 10 ca baza intermediara.

Astfel, pentru conversia unui numar din baza 2 in baza 5 efectuam urmatorii pasi:- numarul in baza 2 este trecut in echivalentul in baza 10- echivalentul in baza 10 este convertit in baza 5

Exista insa situatii speciale in care conversia se poate face direct (cu un mic calcul mental).

Binar -> Hexazecimal1111 0000 1110 1101 2 = 61677 10

- se grupeaza numarul binar in grupe de cate 4 si scriem echivalentul hexazecimal el grupei respective11112 = 15 10 = F 16

00002 = 0 10 = 0 16

11102 = 14 10 = E 16

11012 = 13 10 = D 16

3

Page 4: Conversia Numerelor Scrise in Baze Diferite

http://24secunde.com

Asadar, 1111 0000 1110 1101 2 = F0ED 16

Octal -> BinarFie numarul octal: 6758 = 44510

Il despartim in cifrele componente carora le aflam echivalentul binar :

68 = 1102

78 = 1112

58 = 1012

Asadar, 6758 = 110 111 1012.

Se completeaza cu 0 in fata astfel incat fiecarei cifre octale sa-i corespunda un grup binar de 3 cifre.

0 se scrie 0001 se scrie 00111 se scrie 01110 se scrie 010

4