Upload
ursu-dan
View
4
Download
0
Embed Size (px)
DESCRIPTION
Laboratorul Nr.2 USM
Citation preview
Universitatea de Stat din Moldova
Tehnologii Informaionale de Comunicare
Ministerul Educaiei al Republicii Moldova
Universitatea de Stat din Moldova
Facultatea de Fizic i Inginerie
Catedra Fizic Aplicat i Informatic
Lucrare de laborator nr.2
Tema: Reprezentarea numerelor n calculator
Lectori: Incule Ion,
Boris Iulia
Chiinu 2014
Note teoretice
Reprezentarea numerelor ntregi cu semn
n memoria computerelor, numerele sunt reprezentate ca i numere binare, pe un anumit numr (finit) de bii. Valorile care pot fi reprezentate depind de numrul de bii folosii pentru respectiva reprezentare. Spre exemplu, pe 2 bii poate fi reprezentata valoarea maxima 3 = (11)2, iar pe 8 bii poate fi reprezentata valoarea maxima 255=(11111111)2.
Daca trebuie reprezentate numere ntregi cu semn, atunci un bit din numrul total de bii ai reprezentrii va fi folosit pentru semnul numrului. Bitul de semn va fi bitul de rang maxim (cel mai din stnga):
n reprezentarea n complement fa de 2, un numr pozitiv se reprezint pe cei n bii, cu bitul de semn 0. Valoarea maxima reprezentabil pe n bii va fi:
Aadar, pe n bii, valoarea maxima reprezentabil este: 2n-1-1
In reprezentarea n complement fa de 2, numerele negative se obin scznd n binar, numrul pozitiv din 2n . Bitul de semn pentru numerele negative va fi 1. Aadar, n acest cod, daca X este pozitiv se reprezint ca atare pe n-1 bii, iar daca este negativ, se reprezint valoarea 2n-|X|.
Exemplu:
Numrul +18, reprezentat pe 8 bii este:00010010
Numrul -18 se obine scznd din 2n n binar valoarea +18 n binar (vezi figura de mai jos):
sau acelai lucru, se scade n zecimal +18 din 2n (din 28) i se reprezint rezultatul scderii n
binar:
28-18=256-18=238
(238)10=(11101110)2
O metoda mai rapid de deducere a reprezentrii numerelor ntregi negative n complement fa de 2 pe n bii rezulta de mai sus i este dat de urmtoarea regul: Pentru a reprezenta n complement fa de 2 un numr ntreg negativ se reprezint modulul sau dup care, ncepnd de la bitul de ordin zero spre stnga toi biii 0 i primul bit 1 se pstreaz i toi ceilali i inverseaz valoarea (0->1 si 1->0).
O alt metod ar fi transformarea n binar a numrului apoi inversarea lui i la numrul binar inversat se adun unitatea. Exemplu: -18 n binar se reprezint ca 00010010 ( pe 8 poziii binare), inversat el devine: 11101101 i plus unitatea (adic 11101101+1) face: 11101110 ce i reprezint numrul dat n cod complementar fa de 2.
Alte coduri de reprezentare a valorilor ntregi sunt:
Cod direct: o poziie, prima din stnga, este rezervat semnului. Dac n aceast poziie este nscris 0, numrul binar este pozitiv, dac 1 numrul reprezentat este negativ.
Intervalul posibil admis de reprezentarea dat este [-2n-1+1, 2n-1-1]
Cod invers: Pentru numerele pozitive scrierea n cod invers este identic cu cea din cod direct. Dac numrul este negativ, el se nscrie aa cum ar fi pozitiv, apoi se inverseaz fiecare cifr binar. Pe n poziii binare pot fi reprezentate numere ntregi din intervalul [-2n-1+1, 2n-1-1]
Calculatoarele actuale folosesc codul complementar pentru reprezentarea ntregilor. In acest cod, valoarea 0 (zero) are reprezentare unica.
Exemplu
Reprezentarea numrului 18 i -18 pe 8 poziii :
Direct
18
0
0
0
1
0
0
1
0
-18
1
0
0
1
0
0
1
0
Invers
18
0
0
0
1
0
0
1
0
-18
1
1
1
0
1
1
0
1
Complementar
18
0
0
0
1
0
0
1
0
-18
1
1
1
0
1
1
1
0
Reprezentarea numerelor reale
Reprezentarea numerelor reale se poate face n virgula fixa sau n virgula mobila.
Reprezentarea numerelor reale n virgula fixa
Pentru reprezentarea numerelor reale n virgula fixa se folosete bitul cel mai semnificativ ca bit de semn. Modulul prii ntregi i partea fracionar au un numr prefixat de bii pe care se reprezint i se aplic urmtoarele reguli:
alinierea n locaia de memorie se face la virgula virtual.
dac valoarea parii ntregi este mai mica dect valoarea maxima ce poate fi reprezentata pe biii alocai prii ntregi se adaug la stnga zerouri suplimentare.
daca valoarea parii ntregi este mai mare dect valoarea maxim ce poate fi reprezentat pe biii alocai prii ntregi se pierd cifrele cele mai semnificative.
dac valoarea prii fracionare este mai mica dect valoarea maxim ce poate fi reprezentat pe biii alocai prii fracionare se adaug la dreapta zerouri nesemnificative.
daca valoarea prii fracionare este mai mare dect valoarea maxim ce poate fi reprezentat pe biii alocai prii fracionare se pierd cifrele cele mai nesemnificative.
Exemplu
S presupunem ca se folosesc 2 octei (16 bii) pentru reprezentarea numerelor reale, din care bitul de rang 15 va fi folosit pentru semn, 6 bii vor fi folosii pentru reprezentarea parii ntregi si 9 bii pentru reprezentarea parii fracionare.
Numrul 19.270751953125 are reprezentarea binara (10011.010001010101). Reprezentarea
acestui numr va fi:
Numrul negativ -19.270751953125 are reprezentarea binara ca si cea a numrului pozitiv, cu
deosebirea ca bitul de semn este 1:
In schimb, 243. 270751953125 are reprezentarea binara (11110011,010001010101) si partea
ntreaga a numrului este mai mare dect valoarea maxima reprezentabil pe cei 6 bii alocai
parii ntregi. Astfel, acest numr se va reprezenta sub forma:
producndu-se o aa-numit depire, adic pierzndu-se 2 bii cei mai semnificativi, iar numrul
reprezentat este de fapt 51. 270751953125.
Reprezentarea n virgula mobil a numerelor reale este un tip superior de reprezentare, astfel conceput nct la depire se pierd cifrele cele mai puin semnificative. Aceasta reprezentare se bazeaz pe faptul c orice numr real x se poate scrie sub forma: x = 0.mbe pe unde m este mantisa numrului, b este baza de numeraie, iar e este exponentul. n notaia tiinific, numerele reale se noteaz sub forma: mantisa C baza exponent
Exemple:
Scrierea valorilor reale sub forma e x = 0.m b este o scriere cu mantisa subunitara, n baza 10.
Orice valoare reala poate fi scrisa ns i sub forma:
x = 1.m2e
care nseamn scrierea numrului n baza 2, cu mantisa ntre 1 si 2, m fiind partea fracionara a mantisei. Valorile date mai sus ca exemplu se scriu n baza 2 sub urmtoarea forma:
Reprezentarea n virgul mobil folosete scrierea numerelor binare n form normalizat ( Astfel 1011=1,01123; 0,00101=1,012-3)
Conform standardului IEEE, se utilizeaz patru forme de reprezentare a numerelor n virgul mobil: simpla precizie pe 32 poziii binare (bii), dubla precizie pe 64 bii, dubla precizie extins pe 96 bii i quadrupl precizie pe 128 bii. Reprezentarea pentru numr include trei cmpuri:
cmpul S pentru semn cu lungimea de o poziie binar
cmpul pentru caracteristic cu lungimea de 8 bii pentru simpla precizie, de 11 bii pentru dubla precizie i de 15 bii pentru dubla precizie extins i quadrupl precizie.
Cmpul pentru partea fracionar f a mantisei, aliniat la stnga, cu lungimea de 23 bii pentru simpla precizie, de 52 bii pentru dubla precizie, de 80 bii pentru dubla precizie extins i 112 quadrupl precizie.
Reprezentarea grafic:
S
Caracteristic (C)
Mantisa (f)
Semn
Caracteristic
Mantis
Total
Simpla precizie
1
8
23
32
Dubla precizie
1
11
52
64
Dubla precizie extins
1
15
80
96
Quadrupla precizie
1
15
112
128
Valoarea caractersiticii C se determin conform formulei
-
=
-
=
-
=
+
=
precizie
quadrupla
si
extinsa
precizie
dubla
pentru
precizie
dubla
pentru
precizie
simpla
pentru
e
C
,
1
2
16383
,
1
2
1023
,
1
2
127
14
10
7
Valoarea minim a acaracteristicii este 0, iar valoarea maxim se determin reieind din numrul de poziii binare alocate pentru reprezentare. Pentru simpla precizie ea este 28-1=255, pentru dubla precizie 211-1=2047, pentru dubla precizie extins i quadrupl precizie 215-1=32767. Cnd C=0, numrul reprezentat este 0.
Exemplu: S se reprezinte n virgul mobil simpl precizie numrul 39. Avem
(39)10=(100111)2=(1,0011125)2
C=5+127=132=(10000100)2
i reprezentarea va fi:
Biii
31
30
23
22
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
0
1
0
0
0
0
1
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Unele caracteristici ale formelor d ereprezentare a datelor numerice n virgul mobil.
Forma de reprezentare
Numrul de poziii binare
Domeniul de reprezentare()
Total
Caracteristica
Mantisa
Cel mai mic numr pozitiv,
Cel mai mare numr pozitiv,
Simpla precizie
32
8
23
10-38
1038
Dubla precizie
64
11
52
10-308
10308
Dubla precizie extins
96
15
80
10-4932
104932
Quadrupla precizie
128
15
112
10-4932
104932
Algebra boolean
Algebra boolean poate fi definit printr-o mulime a elementelor {0,1}, o mulime a operatorilor elementari {-, &, V} (negaia, conjuncia, disjuncia) i printr-un numr de postulate. Orice variabil a algebrei booleene poate avea numai una din dou valori posibile, notate simbolic prin 0 i 1. Operatorii elementari se definesc cu ajutorul tabelelor de adevr. Tabelul de adevr este un tabel care include toate combinaiile posibile ale valorilor variabilelor fa de care este definit operatorul i rezultatul operaiei respective.
X
x
X
y
x&y
x
Y
y
x
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
1
1
0
0
1
0
1
1
1
1
1
1
1
Variabilele i constantele logice, reunite cu ajutorul operatorilor logice formeaz expresii logice. Valorile expresiilor logice pot fi calculate cu ajutorul tabelelor de adevr ale expresiilor logice, care includ toate combinaiile posibile ale valorilor variabilelor din expresia examinat i rezultatele operaiilor logice n ordinea calculrii lor.
Pentru calcularea expresiilor logice este stabilit urmtoarea prioritate a operaiilor logice: 1. negaia, 2. conjuncia, 3. disjuncia.
Funcia logic de n variabile este o aplicaie care pune n coresponden fiecrei combinaii de valori ale variabilelor valoarea 0 sau 1 a variabilei y. Tabelul de adevr al funciei logice este un tabel care include toate combinaiile posibile ale valorilor argumentelor i valorile corespunztoare ale variabilei dependente y.
Definirea funciei logice prin formule se face atribuind variabilei y valorile expresiilor logice ce conin argumentele .
Circuitul logic este un dispozitiv destinat calculrii funciilor logice.
Circuitele destinate calculrii funciilor logice frecvent utilizate se numesc circuite logice elementare sau pori logice
2
1
x
x
y
=
2
1
&
x
x
y
=
x
y
=
2
1
&
x
x
y
=
2
1
x
x
y
=
2
1
2
1
x
x
x
x
y
=
SAU
SI-NU
NU
SI
SAU-NU
COINCIDENTA
Teme de laborator
1. Reprezentai n cod direct, invers, complementar pe 8 poziii binare numrul ntreg:
Varianta
Numarul1
Numarul2
1
11
-73
2
13
-71
3
15
-69
4
17
-67
5
19
-65
6
21
-63
7
23
-61
8
25
-59
9
27
-57
10
29
-55
11
31
-53
12
33
-51
13
35
-49
14
37
-47
15
39
-45
16
41
-43
17
43
-41
18
45
-39
19
47
-37
20
49
-35
21
51
-33
22
53
-31
23
55
-29
24
57
-27
25
59
-25
2. Reprezentai n virgul fix pe 8 poziii binare numrul:
Varianta
Numarul1
Numarul2
1
0,245
-0,255
2
0,24
-0,26
3
0,235
-0,265
4
0,23
-0,27
5
0,225
-0,275
6
0,22
-0,28
7
0,215
-0,285
8
0,21
-0,29
9
0,205
-0,295
10
0,2
-0,4
11
0,195
-0,405
12
0,19
-0,41
13
0,185
-0,415
14
0,18
-0,42
15
0,175
-0,425
16
0,17
-0,43
17
0,165
-0,435
18
0,16
-0,44
19
0,155
-0,445
20
0,15
-0,45
21
0,145
-0,455
22
0,14
-0,46
23
0,135
-0,465
24
0,13
-0,87
25
0,125
-0,875
3. Reprezentai n virgul mobil n dubla precizie numerele:
Varianta
Numarul1
Numarul2
1
18,345
18,145
2
22,24
20,04
3
26,135
21,935
4
30,03
23,83
5
33,925
28,725
6
37,82
35,62
7
41,715
38,515
8
45,61
42,41
9
49,505
45,305
10
53,7
51,2
11
57,295
52,095
12
60,19
53,99
13
64,285
61,885
14
68,48
62,78
15
72,575
63,675
16
76,27
71,57
17
80,965
72,465
18
84,86
73,36
19
88,355
81,255
20
92,75
82,15
21
96,145
85,045
22
99,34
92,94
23
103,835
95,835
24
107,73
97,73
25
111,825
99,625
4. Stabilii funcia logic materializat de urmtorul circuit
Varianta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Bibliografie
1. Bolun I, Covalenco I . Bazele informaticii aplicate. Chiinu, 1999.
2. Gremalschi A., Mocanu Iu., Gremalschi L. Informatica. Structura calculatorului. Manual pentru clasa a 10-a. Editura tiina, Chiinu, 2000.
3. Barbu Gheorghe, Vduv Ion, Bolotean Mircea. Bazele Informaticii. Bucureti, 1997.
4. Gremalschi L., Mocanu I. Structura i funcionarea calculatorului. Chiinu, Liceum, 1996.
5. Mateescu George-Daniel, Mateescu Ileana-Carmen. Analiz numeric. Proiect de manual pentru clasa a XII-a. Profil informatic. Editura Petrion,- 1995.
1
PAGE
11
Lectori: Incule Ion, Boris Iulia