Sunteți pe pagina 1din 4

Lucrare de laborator nr.

2
Reprezentarea intern a datelor
Introducere
Scopul lucrrii este nelegerea reprezentrii interne a diferitelor tipuri de date n
calculator. Se vor studia i exemplifica modurile de reprezentare a numerelor ntregi (n
Mrime i Semn, n Complement fa de 1 (C1, Complement fa de ! (C!, n "inar zecimal
mpac#etat i despac#etat ($C%, precum i a numerelor reale (formatul &''' scurt, lung i
temporar.
Reprezentarea numerelor ntregi n Mrime i Semn (MS) n Complement fa
de 1 i de 2 (C1,C2)
(n general, constantele i varia"ilele ntregi se reprezint pe un octet, pe un cuv)nt (!
octei, dou cuvinte (du"lu cuv)nt, sau patru octei. *a toate reprezentrile "itul cel mai
semnificativ reprezint semnul, iar restul reprezentrii (ceilali "ii se folosesc pentru
reprezentarea n "inar a numrului (numerele negative au o reprezentare diferit a modulului
n cele trei tipuri de reprezentri.
'xist deci dou c)mpuri n reprezentarea numerelor ntregi+ semnul i modulul. *a
toate cele trei moduri de reprezentare semnul este , pentru numerele pozitive i 1 pentru
numerele negative.
C)mpul pentru modul se reprezint astfel+
*a reprezentarea n mrime i semn (MS se reprezint modulul numrului, deci
reprezentarea unui numr se va face pun)nd , sau 1 pe "itul semn, n funcie de valoarea
pozitiv, respectiv negativ a numrului, iar pe restul reprezentrii se va pune valoarea
modulului su n "aza !.
*a reprezentarea n complement fa de 1 (C1 dac numrul este pozitiv, reprezentarea
este la fel ca la mrime i semn, adic se reprezint modulul numrului, iar "itul semn este
implicit ,. %ac numrul este negativ, atunci se complementeaz toi "iii reprezentrii
numrului n modul, adic "iii 1 devin , iar cei cu valori , devin 1, astfel ca "itul semn va
fi pe 1. -re"uie reinut faptul c se face complementarea reprezentrii numrului n modul,
adic se reprezint mai nt)i numrul pozitiv, dup care se complementeaz toi "iii.
*a reprezentarea n complement fa de !, dac numrul este pozitiv se reprezint la fel ca
la mrime i semn, respectiv ca la complement fa de 1, adic se reprezint numrul n
modul, iar "itul de semn este ,. %ac numrul este negativ, atunci se complementeaz fa
de ! reprezentarea numrului n modul i anume se scade din valoarea !
n.1
(unde n este
numrul de "ii pe care se face reprezentarea, "itul de semn devenind automat 1
reprezentarea n modul/ o alt cale de a o"ine reprezentarea n complement fa de ! a
numerelor negative este adug)nd valoarea 1 la reprezentarea numrului negativ n
complement fa de 1.
%in modul de reprezentare a numerelor n cele trei forme rezult c numerele pozitive
au aceeai reprezentare at)t n mrime i semn c)t i n complement fa de 1 i n
complement fa de !.
1
0 atenie sporit tre"uie acordat spaiului minim (numr minim de octei pe care se
poate reprezenta un numr n cele trei moduri de reprezentare. %e exemplu c)nd se dorete
aflarea numrului minim de octei pe care se poate reprezenta numrul 111 tre"uie s se in
cont c pentru reprezentarea modulului este la dispoziie mai puin cu un "it (cel de semn din
spaiul ales pentru reprezentare. (n acest caz dei valoarea modulului su ncape pe un octet
(111 2 3$#, numrul nu se poate reprezenta pe un octet n nici un mod de reprezentare,
deoarece "itul semn tre"uie reprezentat separat, altfel la interpretarea reprezentrii 3$#,
primul "it fiind 1, reprezentarea va fi a unui numr negativ n loc de numrul dorit. (n
concluzie, pentru reprezentarea numrului 111 va fi nevoie de minim ! octei (reprezentarea
se face pe multiplu de octei, iar numrul fa fi reprezentat astfel+ ,,3$# n toate cele trei
moduri de reprezentare, fiind pozitiv.
'xemple+
S se reprezinte pe 4 octei urmtoarele numere+ 115, 163, 7115, 7163
115(% 2 1,,1 11,1($ 2 3%(8
%eci reprezentarea in MS. C1 si C! va fi ,, ,, ,, 3% (8
163(% 2 1,1, 1,,1($ 2 93(8
%eci reprezentarea in MS, C1 si C! va fi+ ,, ,, ,, 93 (8
:entru ;115, se reprezint mai nt)i n modul (este calculat mai sus i se o"ine+
MS+ 1,,, ,,,, ,,,, ,,,, ,,,, ,,,, 1,,1 11,1 ($ 2 <, ,, ,, 3% (8
C1+ 1111 1111 1111 1111 1111 1111 ,11, ,,1, ($ 2 == == == 6! (8
C!+ 1111 1111 1111 1111 1111 1111 ,11, ,,11 ($ 2 == == == 6> (8
:entru ;16> analog+
MS+ <, ,, ,, 93 (8
C1+ == == == 16 (8
C!+ == == == 15 (8
Reprezentarea numerelor reale n format I
Standardul &''' de reprezentarea numerelor reale propune trei moduri de reprezentare
pentru numerele reale+
=ormatul scurt pe 4 octei
=ormatul lung pe < octei
=ormatul temporar pe 1, octei
?umerele reale se reprezint n formatele scurte i lungi n memoria calculatorului,
iar formatul temporar se gsete la ncrcarea numerelor reale n coprocesorul matematic .
-oate cele trei formate conin trei pri+
Semn Caracteristic Mantis
$itul de semn ; S
Caracteristica ; C (pe <, 11, respectiv 11 "ii, la formatul scurt, lung, temporar
Mantisa ; M (pe !>, 1!, respectiv 64 "ii
!
:entru fiecare reprezentare+
S este , dac numrul este pozitiv i 1 dac numrul este negativ
Caracteristica 2 'xponent . 5=# (respectiv >==# la &''' lung i >===# la formatul temporar
:entru gsirea mantisei mai nt)i se normalizeaz numrul scris n "aza !, adic se scrie
numrul su" forma+ ?@ 2 1.Aalte cifre "inareB C !
exponent
.
*a reprezentarea n format &''' scurt i lung, mantisa este format din cifrele de dup
virgul, deci primul 1 dinaintea virgulei nu se mai reprezint n mantis, iar la formatul
temporar se reprezint toate cifrele din numr.
'xemple+
S se reprezinte n format &''' scurt numrul 15,6(%.
Se va converti separat partea ntreag i cea zecimal i se o"ine+
:artea ntreag+ 15(% 2 11(8 2 ,,,1 ,,,1($
:artea zecimal+ ,,6(% 2 ,,(1,,1($ (se o"serv c numrul este periodic
%eci 15,6(% 2 1,,,1,(1,,1($
Se normalizeaz numrul+ 15,6(% 2 1,,,1,(1,,1($ 2 1,,,,1(1,,1 C !
4
(dei era
mai corect n loc de !
4
s se scrie 1,
1,,
($ pentru c notarea era in "aza !, faptul c se
calculeaz caracteristica mai uor n #exa dec)t in "inar poate fi o scuz motivat.
%in aceast reprezentare se poate deduce mantisa (ceea ce este dup virgul, deci fr
acel 1 dinaintea virgulei care prin convenie nu se mai reprezint i anume+
M 2 ,,,1(1,,1($.
(n continuare se calculeaz caracteristica+ C 2 exponent . 5=(8 2 4.5=(8 2 <>(8 2
1,,, ,,11($
Se va scrie "itul semn , i deDa se poate trece la scrierea reprezentrii+
, 1,,, ,,11 ,,,11,,11,,11,,11,,11,,
semn caract. mantis
:entru a scrie reprezentarea n #exa se vor grupa c)te 4 cifre "inare. 9tenie ns la
faptul ca gruparea a c)te 4 cifre nu va corespunde caracteristicii, datorit "itului de semn care
decaleaz o poziie. %eci cifrele #exa ale caracteristicii nu se vor regsi n reprezentarea
notat in #exa.
@ezultatul final al reprezentrii este+ 41 <C CC CC(8.
(n cazul practic, n memoria calculatorului, datorit unei rotunDiri care se face la
ultimul "it al reprezentrii, se poate o"serva c n mantis ar mai urma un 1 dup cei !> de
"ii, iar calculatorul va face rotunDire superioar, de aceea pe ultimul "it (cel mai puin
semnificativ va apare 1, iar reprezentarea va fi +
41 <C CC C%(8.
(n mod analog se va reprezenta ;!>,1(%+
!>(% 2 15(8 2 1 ,111($
,,1(% 2 ,,1($
%eci !>,1(% 2 1,111,1 2 1,,1111 C !
4
de unde rezult M 2 ,1111,,,,,,,,,,,E (!> de
"ii
Caracteristica 2 5=(8 . 4(8 2 <>(8
Se pune "itul semn pe 1.
@eprezentarea direct in #exa este C1 $C ,, ,,(8.
>
(n continuare se pune pro"lema invers reprezentrii+ se d reprezentarea unui numr
n format &''' scurt i se cere aflarea numrului real care este astfel reprezentat.
'xemplu+
Se d reprezentarea 4> ,4 >> >> (8 i se cere valoarea zecimal a numrului real
reprezentat.
Se scrie in "inar reprezentarea+ ,1,, ,,11 ,,,, ,1,, ,,11 ,,11 ,,11 ,,11
%e aici se deduce c+
Semnul este ,
Caracteristica este C 2 1,,, ,11, ($ 2 <6(8
@ezult deci c exponentul este <6(8 ; 5=(8 2 5 (8
Mantisa M 2 ,,,, 1,,, ,11, ,11,E
?umrul este ?r 2 1,mantisa C !
exponent
2 1,,,,, 1,,, ,11,EC!
5
2
2 1,,, ,1,,,,,11,,11E2 1!< . 4 . ,.1!1 . ,.,6!1 . E
1>!,1<51 a crei valoare exact era 1>!,!.
Reprezentarea numerelor n !C" mpac#etat i de$pac#etat
:e l)ng modurile de reprezentare a numerelor ntregi n mrime i semn, complement
fa de 1 i de ! mai exist reprezentarea n $C% mpac#etat i despac#etat.
(n reprezentarea $C% mpac#etat se reprezint c)te o cifr zecimal pe 4 "ii, deci
c)te ! cifre zecimale pe octet.
(n reprezentarea $C% despac#etat se reprezint c)te o cifr zecimal pe octet (deci pe
primii patru "ii se pune ,.
9ceste moduri de reprezentare se folosesc i pentru o mai "un lizi"ilitate a numerelor
din punct de vedere al programatorului, c#iar dac aceasta se face prin pierderea unei "une
poriuni din spaiul de reprezentare (la $C% despac#etat nu se mai folosesc codurile pe patru
"ii care trec ca valoare de 3, iar la $C% despac#etat se mai pierde nc Dumtate de octet n
plus.
:entru a putea realiza operaii cu numere reprezentate n $C% exist instruciuni
suplimentare de corecie a rezultatului dup adunare, nmulire care se vor studia n lucrarea
cu instruciuni pentru operaii aritmetice.
'xemplu+
?umrul >31!(% se va reprezenta n $C%
mpac#etat+ >3 1!(8 deci pe ! octei/
despac#etat ,> ,3 ,1 ,!(8 deci pe 4 octei.
Mer$ul lucrrii
Se vor reprezenta n MS, C1 i C! numerele ntregi prezentate n exemplele de
mai sus.
Se vor reprezenta n format &''' scurt numerele reale.
Se vor realiza dou exemple de aflare a numrului real d)ndu7se valoarea
reprezentrii.
4

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