Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
sign(x) =
1 se x > 0
`e la funzione segno;
1 se x < 0
`e detta base;
p numero intero detto esponente o caratteristica di x;
di numeri interi detti cifre, con 0 di 1;
d1 = 0 (rappresentazione normalizzata);
m `e detta mantissa di x e vale
m < 1;
p `e detto esponente di x.
Un numero reale x si pu`o scrivere in
notazione posizionale o scientifica:
x = (.d1 d2 d3 ...) p
Il . `e detto punto radice, mentre si dicono cifre significative (o essenziali) le prime cifre della
mantissa.
Ad esempio il numero (in base 10) 372.4 pu`
o essere scritto in notazione scientifica 0.3724 103 .
In questo caso = 10, le cifre della mantissa m = 0.3724 sono d1 = 3 (3 `e la prima cifra significativa),
d2 = 7, d3 = 2, d4 = 4 e p = 3.
notazione mista:
x=
(0. 00...0
| {z } d1 d2 d3 ...)
|p|cifre
se
p0
se
p>0
La parte del numero a sinistra del punto radice `e detta parte intera del numero, mentre quella a
destra del punto radice `e detta parte frazionaria.
Ad esempio i numeri (in base 10) 0.00645 e 127.15 sono scritti in forma mista con p = 2 e p = 3
rispettivamente.
2
986
0
2
493
1
2
246
0
2
123
1
2
61
1
2
30
0
2
15
1
2
7
1
2
3
1
2
1
1
2
0
(1972)10 = (11110110100)2
X Il procedimento delle divisioni successive ha sempre termine.
1.53125
d1
0.53125 2
1.0625
d2
0.0625 2
0.125
d3
0.125 2
0.25
d4
0.25 2
0.5
d5
0.5 2
1.0
d6
0.2
d1
0.2 2
0.4
d2
0.4 2
0.8
d3
0.8 2
1.6
d4
0.6 2
1.2
d5
0.2 2
0.4
d6
..
.
(0.1)10 = (0.00011)2
(25.375)10 = (11001.011)2
= 1 24 + 1 23 + 0 22 + 0 2 + 1 = (25)10
= 0
1
2
+1
1
22
+1
1
23
3
8
= (0.375)10
(11001.011)2 = (25.375)10
0
0
1
1
1
10
0
1
0
0
0
1
0
1
000000001101101
000000000000101
111111111111010
111111111111011
n. bit
sign(x)
t
l
bias
Emin
Emax
precisione semplice
32 (4 bytes)
1
23
8
127
-126
127
precisione doppia
64 (8 bytes)
1
52
11
1023
-1022
1023
00000000
00000001
00000010
..
.
(*)
-126 (Emin )
-125
..
.
01111110
01111111
10000000
10000001
10000010
..
.
-1
0
1
2
3
..
.
11111110
11111111
127 (Emax )
(**)
X Pi`
u piccolo numero reale positivo, in precisione semplice, rappresentabile al calcolatore:
xmin = 1.00...0 2126 1.17 1038
0
00000001
X Pi`
u grande numero reale positivo, in precisione semplice, rappresentabile al calcolatore:
xmax = 1.11...1 2127 3.40 1038
0
11111110
X Pi`
u piccolo numero reale negativo, in precisione semplice, rappresentabile al calcolatore:
xmax = 1.11...1 2127 3.40 1038
1
11111110
X Pi`
u grande numero reale negativo, in precisione semplice, rappresentabile al calcolatore:
xmin = 1.00...0 2126 1.17 1038
1
00000001
X In precisione doppia: xmin = 1.00...0 21022 2.22 10308 e xmax = 1.11...1 21023 1.7 10308
X Esempio: rappresentazione su 32 bit di 7.25:
0
10000001
X Linsieme dei numeri finiti rappresentati in base 2, con t cifre della mantissa e con la caratteristica
compresa tra Emin ed Emax , ha cardinalit`a 2t (Emax Emin + 1) + 1.
I numeri finiti sono distribuiti in modo non uniforme nellintervallo [2Emax , 2Emin ] {0}
[2Emin , 2Emax ].
X I numeri denormalizzati sono numeri compresi negli intervalli (2Emin , 0) e (0, 2Emin ):
Esempio: rappresentazione di 0.11 2126 su 32 bit:
0
00000000
Pi`
u piccolo numero positivo denormalizzato su 32 bit: 1.0 2149 1045
0
00000000
Pi`
u grande numero negativo denormalizzato su 32 bit: 1.0 2149 1045
1
00000000
underflow
Si assume 0 come valore approssimato di x;
3. |x| `e pi`
u grande del pi`
u grande numero rappresentabile (p > Emax );
overflow
Si assume come valore approssimato di x;
4. la caratteristica `e rappresentabile in modo esatto (Emin p Emax ), ma la mantissa m di x non
`e rappresentabile con t cifre;
0.d1 d2 ...dt
m =
dt + t se
dt =
0.d1 d2 ...dt
dt
se
troncamento
dt+1 21
arrotondamento
dt+1 < 12
|x x |
eps
|x|
1t
con
eps =
troncamento
1 1t
2
arrotondamento
|x y | < r max(|x |, |y |)