Está en la página 1de 7

Numere fara semn

1011doi = (1 x 23) + (0 x 22) + (1 x 21) + (1 x 20) =


Aritmetica calculatorului = (1 x 8) + (0 x 4) + (1 x 2) + (1 x 1) = 11zece
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 01 0 1 1
•Numere intregi cu si fara semn (32 de biti)
cel mai putin semnificativ bit
cel mai semnificativ bit
•Numere in virgula flotanta
0000 0000 0000 0000 0000 0000 0000 0000doi = 0zece
0000 0000 0000 0000 0000 0000 0000 0001doi = 1zece

1111 1111 1111 1111 1111 1111 1111 1111doi = 4 294 967 295zece
ACSO2 - 1 ACSO2 - 2

Numere cu semn Numere cu semn - exemplu


In complement fata de doi:
Valoarea numarului este:
0000 0000 0000 0000 0000 0000 0000 0000doi = 0zece
0000 0000 0000 0000 0000 0000 0000 0001doi = 1zece (x31 x -231)+(x30 x 230)+(x29 x 229)+…+(x1 x 21)+(x0 x 20)
0000 0000 0000 0000 0000 0000 0000 0010doi = 2zece
Care este valoarea zecimala a numarului binar:
0111 1111 1111 1111 1111 1111 1111 1110doi = 2 147 483 646zece
0111 1111 1111 1111 1111 1111 1111 1111doi = 2 147 483 647zece 1111 1111 1111 1111 1111 1111 1111 1100 doi ?
1000 0000 0000 0000 0000 0000 0000 0000doi = -2 147 483 648zece (1 x -231)+(1 x 230)+(1 x 229)+…+(1 x 22)+(0 x 21)+(0 x 20)=
1000 0000 0000 0000 0000 0000 0000 0001doi = -2 147 483 647zece
= -231+ 230 + 229 +…+ 22 =
1111 1111 1111 1111 1111 1111 1111 1101doi = -3zece
1111 1111 1111 1111 1111 1111 1111 1110doi = -2zece = -2 147 483 648zece + 2 147 483 647zece= -4zece
1111 1111 1111 1111 1111 1111 1111 1111doi = -1zece
ACSO2 - 3 ACSO2 - 4

1
Negarea unui numar cu semn Adunarea numerelor
x + x = -1 x +1=-x
(7zece) 0000 0000 0000 0000 0000 0000 0000 0111doi +
Care este negatul numarului 2zece in complement fata de doi? (6zece) 0000 0000 0000 0000 0000 0000 0000 0110doi
2zece = 0000 0000 0000 0000 0000 0000 0000 0010doi 0000 0000 0000 0000 0000 0000 0000 1101doi = 13zece
Negat:
1111 1111 1111 1111 1111 1111 1111 1101doi +
1doi
1111 1111 1111 1111 1111 1111 1111 1110doi = -2zece
Invers, -2zece negat:
0000 0000 0000 0000 0000 0000 0000 0001doi +
1doi
0000 0000 0000 0000 0000 0000 0000 0010doi = 2zece
ACSO2 - 5 ACSO2 - 6

Scaderea numerelor Depasiri

(7zece) 0000 0000 0000 0000 0000 0000 0000 0111 doi - Operatia Operandul A Operandul B Rezultatul care
(6zece) 0000 0000 0000 0000 0000 0000 0000 0110 doi indica depasire
0000 0000 0000 0000 0000 0000 0000 0001 doi = 1zece A+B >= 0 >= 0 <0

A+B <0 <0 >= 0


sau
A- B >= 0 <0 <0
(7zece) 0000 0000 0000 0000 0000 0000 0000 0111 doi +
A-B <0 >= 0 >= 0
(-6zece) 1111 1111 1111 1111 1111 1111 1111 1010 doi
0000 0000 0000 0000 0000 0000 0000 0001 doi = 1zece

ACSO2 - 7 ACSO2 - 8

2
Inmultirea secventiala hardware a numerelor

Algoritmul
de inmultire
a numerelor

ACSO2 - 9 ACSO2 - 10

Inmultirea hardware revizuita Inmultirea numerelor - exemplu

ACSO2 - 11 ACSO2 - 12

3
Impartirea hardware a numerelor Algoritmul
de impartire
a numerelor

ACSO2 - 13 ACSO2 - 14

Impartirea hardware- revizuita Impartirea numerelor - exemplu

ACSO2 - 15 ACSO2 - 16

4
Numere in virgula mobila Numerele in virgula mobila
3.14159265…zece( ) • simpla precizie
2.71828… zece(e)
0.000000001 sau 1.0 zece x 10-9 scriere 1 bit 8 bits 23 bits
stiintifica
3155760000 sau 3.15576zece x 109 - valoarea numarului in virgula mobila este: (-1)S x F x 2E
- fraction este doar partea fractionala: F = 1 + fraction
1.0 zece x 10-9 forma - numarul se obtine astfel:
1.0 doi x 2-2 normalizata
(-1)S x ((x22 x 2-1)+(x21 x 2-2)+(x20 x 2-3)+…+(x0 x 2-23)) x 2E
1.xxxxxxdoi x 2yyyy

ACSO2 - 17 ACSO2 - 18

Numerele in virgula mobila Numerele in virgula mobila


• dubla precizie
-utilizarea deplasamentului
(-1)S x (1+fraction) x 2(E-deplasament)
- 127 pentru simpla precizie
Codarea IEEE 754 pentru numerele in virgula mobila -1023 pentru dubla precizie

-avantaj:
apar numai valori pozitive la exponent
ACSO2 - 19 ACSO2 - 20

5
Numerele in virgula mobila - exemplu Numerele in virgula mobila - exemplu
Care este reprezentarea binara a numarului zecimal –0.75zece ?
In dubla precizie: -1.1 x 2-1 = (-1)S x (1+f) x 2(E-1023)
-0.75zece= –3/4zece = -3/22zece = -11doi/22zece = -0.11doi (-1)1 x (1+.1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 000doi)x
-0.11doi=-0.11 x 20 = -1.1 x 2-1 x 2(1022-1023)

In simpla precizie: -1.1 x 2-1 = (-1)S x (1+f) x 2(E-127)


31 30 29 … 20 19 18 … 43210
(-1)1 x (1+.1000 0000 0000 0000 0000 000 doi) x 2(126-127) 1 0 1 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 000000
1bit 11 biti 20 biti
31 30 29 … 23 22 21 … 43210 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000000
1 0 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000000 32 biti
1bit 8 biti 23 biti

ACSO2 - 21 ACSO2 - 22

Unitatea
Algoritmul aritmetica
de adunare pentru
in virgula adunarea
mobila in virgula
mobila

ACSO2 - 23 ACSO2 - 24

6
Algoritmul
de inmultire
in virgula
mobila

ACSO2 - 25

También podría gustarte