Sunteți pe pagina 1din 22

CURSUL 2

1.3. SISTEME DE NUMERAŢIE


1.3.1. Noţiuni introductive
•Componentele structural-funcţionale elementare ale calculatoarelor
electronice sunt astfel construite, încât realizează în orice moment una
din două stări posibile. De aceea, sistemul de numeraţie zecimal are o
aplicabilitate limitată în prelucrarea automată a informaţiilor, sistemul de
numeraţie adecvat particularităţilor constructive ale calculatorului
electronic fiind sistemul de numeraţie binar. Deşi sistemul binar este
singurul sistem în care se regăsesc fizic informaţiile în calculator, el se
dovedeşte a fi incomod în dialogul dintre operator şi calculator,
deoarece conduce la reprezentarea informaţiilor prin succesiuni lungi şi
uneori incomode de cifre binare, greu de manevrat de către utilizator.
Pentru evitarea acestor inconveniente, în tehnica de calcul prezintă
interes şi sistemele cu baza 8 sau 16, care permit o scriere mai
condensată a informaţiilor exprimate prin succesiuni de cifre binare.
Aceste sisteme permit conversia directă şi rapidă a informaţiilor dintr-o
bază în alta, deoarece bazele respective sunt de forma 2p, cu p = 1, p =
3 sau p = 4.
• Atât sistemul zecimal, cât şi sistemele utilizate
în tehnica de calcul, sunt sisteme de numeraţie
poziţionale, caracterizate prin faptul că valoarea
fiecărei cifre din cadrul unui număr depinde de
poziţia pe care o ocupă în raport cu virgula,
respectiv punctul zecimal, care separă partea
întreagă de partea fracţionară a numărului.
• Un sistem de numeraţie se poate caracteriza
prin:
– mulţimea cifrelor sale;
– regulile de scriere a numerelor şi
– regulile de calcul.
• Un număr real şi pozitiv R se poate scrie într-un
sistem de numeraţie poziţional cu baza b astfel:

R = xnxn-1xn-2.....xi.....x2x1x0,x-1x-2.....x-m
unde xi reprezintă cifrele prin care se exprimă
numărul.
• Fiecare cifră trebuie să satisfacă dubla inegalitate:
0  xi  b – 1

• În structura numărului R distingem partea întreagă I,


reprezentată de succesiunea de cifre xnxn-1xn-
2....xi.....x2x1x0 şi partea fracţionară F, reprezentată prin
0,x-1x-2....x-m.
• Trecerea numerelor dintr-o bază b într-o bază
B se face cu ajutorul a doi algoritmi distincţi:
– algoritmul pentru trecerea părţii întregi I,
– algoritmul pentru trecerea părţii fracţionare F a
numărului R în baza dorită B.
• Algoritmul pentru trecerea părţii întregi I a
numerelor reale din baza b în baza B constă
dintr-o succesiune de paşi prin care numărul
iniţial I, sau câturile succesive obţinute, se
împart la nouă bază B, impunându-se condiţia
ca resturile obţinute să fie cifre în noua bază B.
Algoritmul ia sfârşit atunci când ultimul cât, qk,
devine zero. Şirul resturilor obţinute, în ordine
inversă obţinerii lor, exprimă numărul I în baza
B.
• Aplicând algoritmul expus obţinem următoarea
succesiune de relaţii:
• I = Bq1 + r0 0  ro  B - 1
• q1 = Bq2 + r1 0  r1  B - 1
• q2 = Bq3 + r2 0  r2  B – 1
.........................................................
• qk-1 = Bqk + rk-1 0  rk-1  B – 1

• Substituind, din aproape în aproape, valorile succesive


ale câturilor în expresia ce redă valoarea lui I, obţinem:
• I = Bq1 + r0 = B(Bq2 + r1) + r0 = B2(Bq3 + r2) + Br1 + r0
= ................
• = Bkqk + Bk-1 rk-1 + Bk-2rk-2 +.....+B2r2 + B1r1 + B0r0
• Admiţând că qk este zero, valoarea lui I devine:

I = rk-1Bk-1 + rk-2Bk-2 +.....+r2B2 + r1B1 + r0B0

• Deoarece valorile r reprezintă cifre în sitemul de


numeraţie în baza B, fiecare astfel de cifră fiind
înmulţită cu o putere a bazei B care depinde de poziţia
restului în şir, relaţia de mai sus este echivalentă cu:

I = (rk-1rk-2.....r2r1r0)B
• Algoritmul pentru trecerea părţii fracţionare F a unui
număr real din baza b în baza B utilizează proprietatea
potrivit căreia două numere reale sunt egale între ele
atunci când ele au părţile întregi şi părţile fracţionare
egale între ele. La fiecare pas al aplicării algoritmului,
numărul iniţial F, sau numerele obţinute ulterior prin
neglijarea părţilor întregi, se exprimă ca un şir de cifre
necunoscute în baza B. Egalitatea astfel obţinută se
înmulţeşte cu baza B, identificându-se părţile întregi
obţinute, după care se renunţă la ele. Fiecare parte
întreagă identificată exprimă, în ordinea obţinerii, câte
o cifră din partea fracţionară a numărului F în baza B.
Algoritmul ia sfârşit atunci când se obţine o exprimare
suficient de precisă a numărului iniţial F în baza B.
1.3.2. Sistemul de numeraţie binar
• Sistemul de numeraţie binar operează cu cifrele 0 şi 1.
El este de fapt singurul sistem utilizat efectiv în
prelucrarea automată a datelor şi este perfect adecvat
particularităţilor structural-funcţionale ale
componentelor elementare ale calculatorului.
• Evaluarea unui număr binar este echivalentă cu
trecerea lui în sistemul de numeraţie zecimal şi se
realizează exprimând valoarea fiecărei cifre a numărului
prin înmulţirea ei cu baza 2 la o putere stabilită de
poziţia cifrei faţă de punctul zecimal. Astfel, numărul
11011.0112 poate fi evaluat după cum urmează:
11011.0112 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20 + 0*2-1 +
1*2-2 + 1*2-3 = 27.37510
• Pentru trecerea unui număr din baza 10 în baza 2 se
aplică cei doi algoritmi prezentaţi mai sus.
• Fie: R = 45.62510
• Pentru trecerea părţii întregi a numărului R în baza 2
vom parcurge următoarele calcule:
• 45 = 2*22 + 1
• 22 = 2*11 + 0
• 11 = 2*5 + 1 
• 5 = 2*2 + 1
• 2 = 2*1 + 0
• 1 = 2*0 + 1
• Rezultă că 4510 = 1011012.
• Pentru verificare, avem :1011012 = 1*25 + 1*23 + 1*22 +
1*20 = 4510.
• Pentru obţinerea părţii fracţionare în baza 2 vom
proceda la înmulţiri succesive cu baza 2, conform
celui de-al doilea algoritm expus:

• 0.625 = 0.x-1x-2x-3......2
• 1.25 = x-1.x-2x-3.........  x-1 = 1
• 0.25 = 0.x-2x-3x-4....... 2
• 0.5 = x-2.x-3x-4...........  x-2 = 0
• 0.5 = 0.x-3x-4x-5......... 2
• 1.0 = x-3.x-4x-5...........  x-3 = 1

• Deci, 0.62510 = 0.1012, iar numărul iniţial R = 45.62510


se exprimă ín binar sub forma 101101.1012.
1.3.3. Sistemul de numeraţie hexazecimal
• Sistemul de numeraţie hexazecimal permite scrierea
concentrată a şirurilor lungi de cifre binare, deoarece
fiecare cifră hexazecimală exprimă conţinutul a patru
cifre binare.
• În sistemul hexazecimal, cu baza 16, cifrele utilizate
sunt 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E şi F.
Ultimele cinci cifre au valorile 10, 11, 12, 13, 14 şi 15.
• Trecerea numerelor din hexazecimal în zecimal se
realizează cu ajutorul regulilor specifice sistemelor
poziţionale. Astfel, valoarea în zecimal a numărului
A0B.4816 este:
• 10*162 + 11*160 + 4*16-1 + 8*16-2 = 2571.28125.
• Trecerea numerelor reale din sistemul zecimal în cel
hexazecimal se poate face cu ajutorul celor doi
algoritmi cunoscuţi. Astfel, pentru trecerea numărului
45.62510 în baza 16 se procedează astfel:
• 45 = 16*2 + D
• 2 = 16*0 + 2 
• 0.625 = 0.x-1x-2x-3........16
• A.0 = x-1.x-2x-3............x-1 = A
• obţinându-se valoarea 2D.A.
• În anumite situaţii, deşi numărul iniţial are un număr
finit de cifre în partea fracţionară, numărul convertit
într-o nouă bază are un număr nesfârşit de cifre în
partea fracţionară. Astfel, numărul 329.57510 conduce
la valoarea hexazecimală 149.93333......
• Trecerea numerelor din baza 16 în baza 2 se
realizează cu ajutorul echivalenţelor evidenţiate în
tabelul 1.1. Astfel, numărul CAFEA.38C16 se exprimă
în binar sub forma
• 1100 1010 1111 1110 1010.0011 1000 1100.
• Pentru trecerea directă din binar în hexazecimal, se
constituie spre stânga şi spre dreapta virgulei, grupe
de câte patru cifre binare, grupele incomplete
completându-se cu zerouri spre stânga sau spre
dreapta. Fiecare grupă astfel constituită se substituie
cu cifra hexazecimală dedusă din tabelul 1.1.
• Pentru ilustrarea modului de lucru, să considerăm
numărul binar:
• 100110101000111101.1101010111.
• Constituirea grupelor de câte patru cifre binare
conduce la structura:
 00100110101000111101.110101011100,
• echivalentă cu 26A3D.D5C.
LA VREMURI…
MAI BUNE

S-ar putea să vă placă și