Sunteți pe pagina 1din 3

Exemplu de împărțire a numerelor binare în virgulă mobilă:

12 64 32 16 8 4 2 1
8
1 1 1 0 1
1 1 0 1 1 1

X=1.101001 *2-29

Y= 1.100010 *227

ex=-29cc=1.00011
ey=27 = 0. 11011
mx=0.101001
my=1.100010
1. Denormalizarea conștientă a deîmpărțitului: (m x se va deplasa cu o poziție la dreapta iar e x se va
incrementa cu o unitate)
mx=0.010100
ex=1.00011+
1
1.00100

2. ez=ex-ey=ex+(-ey)

1.00100+
1.00101
0.01001
(deoarece este depășire Rezultă că e z= 1.001001 (-55))
2. Sqmx + Sqmy= 0 + 1 =0 - cîtul va fi negativ

3. |mz|=|mz|/|my|

|mx|=0.010100(întotdeauna se începe cu m x pozitiv)

|my|=0.011101
1
0.011110

-|my|=1.100010

|mx| 0.010100+
-|my| 1.100010 Cîtul
1.110110 0.
1.101100+
|my| 0.011110
0.001010 1
0.010100+
-|my| 1.100010
1.110110 0
1.101100+
|my| 0.011110
0.001010 1
.....
|mz|=0.101...
4. Normalizarea:
Mantisa este normalizată......
mZ=1.010... *2-55

Exemplu de înmulțire
X=0.101001 *2-29
Y= 1.100010 *227
ex=-29cc=1.00011
ey=27 = 0. 11011
mx=0.101001
my=1.100010

1. ez=ex+ey
1.00011+
0.11011
1.11110
2. Sqmx + Sqmy= 0 + 1 =1 - produsul va fi negativ
3. |mz|=|mx|*|my|
|mx|=0.010100
|my|=0.011101
1
0.011110

deînm. .010100
înmulț. .011110
.000000
+mxdeplasat cu o poziție la stînga .0101000
.0101000
+mxdeplasat cu 2 poziții la stînga .01010000
.01111000
+mxdeplasat cu 3 poziții la stînga .010100000
.100011000
+mxdeplasat cu 4 poziții la stînga .0101000000
.1001011000
+mxdeplasat cu 5 poziții la stînga(0) .00000000000
.01001011000

|mz|= 0.001001011000
mz=1.110110101000
4. Normalizarea: deoarece mantisa nu este normalizată urmează să o
deplasam la stinga cu 2 poziții iar puterea se decrementeza de 2 ori (-2).
mz=1.011010100000
ez=1.11110+
1.11110
1.11100 (-4)
- 00100
Rezultatul final: Mz=1.011010100000*2-4

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