wstep.pdf

(248 KB) Pobierz
exists and is continuous in
Instytut Automatyki Politechniki Łódzkiej - Metody Numeryczne
Wiadomości wstępne
Oznaczenia przestrzeni funkcyjnych
[ ]
C
n
a
,
b
f
(
n
)
istnieje i jest ciągła w [ ]
a ,
b
f
C
n
(
R
)
f
(
n
)
istnieje i jest ciągła wszędzie w R
)
C
(
R
)
L
C
2
(
R
)
C
1
(
R
)
C
(
R
Wzór Taylora
Twierdzenie 1
[ ]
d
n
+
1
istnieje w ( )
[ ]
Jeśli
f
C
n
a
,
b
i jeśli
f
(
x
)
a , , to dla dowolnych
b
x
, ∈
a
,
b
dx
n
+
1
= =
n
1
( )
f
(
x
)
f
(
k
)
(
c
)
x
c
k
+
E
(
x
)
k
!
n
k
0
gdzie dla pewnego ξ (zależnego od x ) leżącego między c a x
E
(
x
)
=
1
f
(
n
+
1
(
ξ
)(
x
c
)
n
+
1
n
(
n
+
1
)!
( reszta wzoru Taylora w postaci Lagrange’a )
0
=
- wzór Maclaurina
Jeśli
f
]
C
n
+
[ b
a
,
, to dla dowolnych
x
, ∈
x
+
h
[ ]
a
,
b
= =
n
h
k
f
(
x
)
f
(
k
)
(
x
)
+
E
(
h
)
k
!
n
k
0
gdzie dla pewnego ξ leżącego między x a x+h
h
n
+
1
E
(
h
)
=
f
(
n
+
1
(
ξ
)
n
(
n
+
1
)!
Biorąc
n
we wzorze Taylora (jeśli granica istnieje) otrzymujemy rozwinięcie w szereg
Taylora
f
(
x
)
=
=
1
f
(
k
)
(
c
)
( ) k
x
c
k
!
k
0
lub
=
h
k
f
(
x
)
=
f
(
k
)
(
x
)
k
!
k
0
Definicja (symbole Landau’a):
Jeśli
lim 0
f
(
h
)
=
0
i
lim 0
g
(
h
)
=
0
g
(
h
)
0
oznaczamy:
h
h
f Ο
(
h
)
=
(
g
(
h
))
jeśli istnieje stała
C
0
taka, że
lim 0
f
(
h
)
=
C
( f dąży do 0 tak szybko jak g )
g
(
h
)
h
f ο
(
h
)
=
(
g
(
h
))
jeśli
lim 0
f
(
h
)
=
0
( f dąży do 0 szybciej niż g )
g
(
h
)
h
Wiadomości wstępne str.1
f
c
c
28669773.004.png 28669773.005.png
Instytut Automatyki Politechniki Łódzkiej - Metody Numeryczne
Reprezentacja liczb
System
podstawa
cyfry
dziesiętny
b =10
D ={0,1,2,3,4,5,6,7,8,9}
binarny
b =2
D ={0,1}
ósemkowy
b =8
D ={0,1,2,3,4,5,6,7}
hexadecymalny
b =16
D ={0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
Definicja 1.
Dla danej
podstawy
b
2
i cyfr
D L ,
= b
{ 1
0 −
,
długości mantysy
t
N
,
ograniczeń cechy
e <
min 0 e
<
max
,
definiujemy zbiór:
=
t
σ
a
b
k
b
e
:
{ 0
Φ
=
Φ
(
b
,
t
,
e
,
e
)
=
k
min
max
k
1
{ }
a
1
,
L
,
a
t
D
,
a
1
0
e
min
e
e
max
,
e
Integer
,
σ
+
1
1
nazywany znormalizowanym zbiorem liczb zmiennoprzecinkowych , i zbiór Φ ˆ opisany jak
wyżej, ale z dopuszczeniem kombinacji
e
= a
e
min
, 1
=
0
nazywany nieznormalizowanym
zbiorem liczb zmiennoprzecinkowych
(liczby maszynowe).
=
t
Liczba rzeczywista
x
=
σ
a
b
k
b
e
jest liczbą zmiennoprzecinkową o reprezentacji, w
k
k
1
=
t
której wyróżniamy:
a
k b
k
- mantysę ,
σ- znak , e cechę. Normalizacja zbioru liczb
k
1
zmiennoprzecinkowych gwarantuje, że ta reprezentacja jest jedyna.
Twierdzenie 2:
Najmniejszym dodatnim i największym elementem w zbiorze Φ są
x
=
b
e
min
1
i
min
=
Dowód:
Dla dowolnej mantysy a mamy:
b
e
max
(
b
t
)
max
a
b
bo
a
1
1
(normalizacja) i
=
t
a
b
k
(
b
1
bo
k
a
b
1
,
k
k
1
1
t
więc tożsamość
b
k
(
b
1
=
b
t
kończy dowód.☺
1
Na mocy powyższego twierdzenia mamy: [
k
=
] { } [ ]
Φ
x
max
,
x
min
0
x
min
,
x
max
mamy jednakową liczbę równoodlegle
rozmieszczonych liczb zmiennoprzecinkowych, odległych od siebie o stałą
b ,
e
b
e
b
e
t
:
Φ
[ ) =
b ,
e
e
1
b
{
( )
b
1
+
jb
t
b
e
,
j
=
0
L
,
M
}
,
M
=
b
t
b
t
1
1
Wiadomości wstępne str.2
x
Twierdzenie 3:
W każdym przedziale postaci [ )
28669773.006.png
Instytut Automatyki Politechniki Łódzkiej - Metody Numeryczne
Dowód:
=
t
Najmniejszą liczbą o mantysie postaci
a
k b
k
jest
a
= b
1
(normalizacja), następną jest
0
k
1
a
=
b
+
1
b
t
, następną
a
= 2
b
1
b
t
, …. , największą
1
2
=
t
( )
a
b
k
(
b
1
=
1
b
t
=
b
1
+
b
t
b
1
1
b
t
=
b
1
+
Mb
t
. Te liczby
M
k
=
1
M
są równoodlegle rozmieszczone, odległe od siebie o stałą co kończy dowód. ☺
a
=
b
1
+
jb
t
,
j
=
0
L
,
M
,
=
b
t
b
t
1
1
j
b
t
− , w którym
jedyna liczbą zmiennoprzecinkową jest 0. Odległości miedzy kolejnymi znormalizowanymi
liczbami zmiennoprzecinkowymi rosną ze wzrostem ich modułów.
x
min , x
min
Poniższe twierdzenie opisuje odległość względną miedzy liczbą rzeczywistą a najbliższą
liczbą zmiennoprzecinkową.
Twierdzenie 4:
x
R
:
spełniającego
x
x
zachodzi
min
y
x
1
b
t
+
1 =
:
ε
min
max
x
2
y
Φ
(
ε
:
=
1
b
t
+
1
jest nazywane (względną) dokładnością maszynową, lubε-em maszynowym, lub
2
dokładnością arytmetyki zmiennopozycyjnej).
Dowód:
Weźmy dodatnie [ )
x
b
e
,
b
e
. Zgodnie z poprzednim twierdzeniem odległość tej liczby do
najbliższej liczby zmiennoprzecinkowej nie przekracza
1
b
t
. Jako że
x
b
e
odległość
2
1
b
e
t
1
2
względna nie przekracza
=
b
t
+
1
.☺
b
e
1
2
Zgodnie z twierdzeniami 3 i 4 maksymalny błąd względny, który powstaje w wyniku
zaokrąglenia wyniku operacji matematycznej do najbliższej liczby zmiennoprzecinkowej nie
przekracza ε, a „odległość względna” między dwiema sąsiednimi liczbami
zmiennoprzecinkowymi nie przekracza 2 .
Twierdzenie 5:
(porównanie zbiorów liczb zmiennoprzecinkowych znormalizowanych Φ i
nieznormalizowanych ˆ
):
Na zbiorze [
x
max
,
x
min
]
{} [ ]
0
x
min
,
x
max
zbiory
Φ i ˆ
pokrywają się. W przedziale
[
bx
, min
bx
] [ ]
=
b
e
min ,
b
e
min
liczby zbioru ˆ
są równoodlegle rozmieszczone, odległe od
min
siebie o stałą
min
[ ) =
b
e
t
:
Φ
ˆ
b
e
min ,
b
e
min
{
jb
e
min L
t
,
j
=
b
t
,
b
t
}
.
W szczególności
x
ˆ
= min
b
e
t
jest najmniejszą dodatnią nieznormalizowana liczbą
min
zmiennoprzecinkową.
Wiadomości wstępne str.3
t
Z twierdzenia tego wynika, że liczby zmiennoprzecinkowe nie są rozmieszczone
równomiernie na osi liczbowej – względnie duży jest przedział ( )
28669773.007.png 28669773.001.png
 
Instytut Automatyki Politechniki Łódzkiej - Metody Numeryczne
Nieznormalizowane liczby zmiennoprzecinkowe wypełniają lukę miedzy liczbą 0 a
najmniejszą dodatnią (znormalizowaną) liczbą zmiennoprzecinkową. Luka ta jest znacznie
większą od odległości między najmniejszą dodatnią a kolejną liczbą zmiennoprzecinkową.
Przykład:
Przy n - cyfrowej arytmetyce dziesiętnej mamy
ε
= 10
5
n
.
Przykład:
Liczba 10
1
nie jest liczbą zmiennoprzecinkową w systemie binarnym. Jej reprezentacja w tym
systemie ma nieskończone rozwinięcie: (
10
1 =
0
0001100110
0110011
......
) 2
, będzie więc
skracana jeśli komputer używa tego systemu i po zamianie na system dziesiętny otrzymamy
na przykład 0.10000001490116…
Przykład:
Standard IEEE 754 opisuje „liczby podwójnej precyzji” w następujący sposób:
Zbiór liczb zmiennoprzecinkowych realizowanych w 64-bitowych
słowach, 1 bit jest użyty do reprezentacji znaku, 52 bity tworzą mantysę, 11 reprezentuje
cechę.
Φ
(
52 −
,
,
1021
,
1024
)
W przypadku znormalizowanych liczb zmiennoprzecinkowych pierwszą cyfrą mantysy jest
zawsze 1, więc ten bit nie musi być reprezentowany w sposób jawny. Używany jest tak zwany
zapis przesunięty (bias notation shifted notation), w którym cecha e jest reprezentowana przez
binarną postać liczby
e
e
min
+
1
{
L
,
e
max
e
min
+
1
} { }
=
1
L
,
2046
. Ponieważ
2 11 =
2048
,
dwa pozostałe ciągi bitów 11-bitowej cechy są używane do:
e ),
• a ciąg 11…1 do kodowania “przełączenia” mantysy na zapis wyrażeń symbolicznych,
jak np. Inf (
= a
e
min
,
1
=
0
±
), NaN (
0
/
0
0
×
,
)
.
Po obliczeniach otrzymujemy:
ε
2
53
1
11
10
16
,
x
=
2
1022
2
23
10
308
,
min
x
=
2
1024
1
80
10
308
,
x
ˆ
=
2
1074
4
94
10
324
(najmniejsza dodatnia nieznormalizowana
max
min
liczba zmiennoprzecinkowa).
Inaczej „liczby podwójnej precyzji” IEEE 754 przedstawić można w następujący sposób:
• Dla 0< e <2047 ()( () ( )
1
s
1
.
f
2 2
e
1023
()( () ( )
• Dla e =0,
f
0
f
1
s
0
.
2 2
1022
• Dla e =0, f =0 0
Gdzie e oznacza liczbę zapisaną w 11 bitach cechy, f 52 bity mantysy.
Systemy liczb zmiennoprzecinkowych stosowane w różnych rozwiązaniach
Komputer/standard/środowisko
Liczby zmienno przecinkowe
IEEE standard 754
(Intel Pentium, DEC Alpha, IBM
RS/6000, Motorola 680x0, Sun
Φ
( ˆ
2
24
,
125
,
128
)
-liczby pojedynczej precyzji,
- liczby podwójnej precyzji,
Φ
ˆ
( ˆ
2
53
,
1021
,
1024
)
Wiadomości wstępne str.4
ˆ
1
• ciąg zer 00….0 do kodowania “przełączenia” mantysy na zapis liczby
nieznormalizowanej zmiennoprzecinkowej (
28669773.002.png
Instytut Automatyki Politechniki Łódzkiej - Metody Numeryczne
SPARCstation, C++,Java, MATLAB,
Scilab) *)
Φ - liczby podwójnej precyzji w
formacie rozszerzonym
2
64
,
16381
,
16384
)
Cray
Φ
2( −
48
,
16384
8191
)
Φ
(
92 −
,
16384
8191
)
IBM system/390 (mainframes)
Φ
16( −
,
64
,
63
)
-format pojedynczy,
)
Φ
16( −
,
14
,
64
,
63
-format podwójny,
Φ
16( −
,
28
,
64
,
63
)
-format rozszerzony
Φ
*) implementacja standardu może dopuszczać tylko znormalizowane liczby zmiennoprzecinkowe, ew.
nieznormalizowane w charakterze wyjątków
10( −
,
10
,
98
,
100
)
Wiadomości wstępne str.5
( ˆ
,
,
,
Kalkulator
28669773.003.png
Zgłoś jeśli naruszono regulamin