gdzie p jest podstawą systemu liczenia. Przyjmuje się, że p = 10 dla danych wejściowych i wyników obliczeń oraz przyjmuje się zwykle p = 2 dla języka wewnętrznego komputera.
wartość logiczna |
Boolean |
true, false | |
liczba całkowita |
Integer |
% |
-32768 do 32768 |
liczba całkowita |
Long |
& |
-2147483648 do 2147483647 |
liczba rzeczywista |
Single |
! |
-3.402823E38 do -1.401298E-45, 0, 1.401298E-45 do 3.402823E38 |
liczba rzeczywista |
Double |
# |
-1.79769313486231E308 do -4.94065645841247E-324, 0, 4.94065645841247E-324 do 1.79769313486232E308 |
liczba dziesiętna |
Decimal |
+/-79,228,162,514,264,337,593,543,950,335 bez części dziesiętnej, +/-7.9228162514264337593543950335 z 28 miejscami po przecinku | |
waluta |
Currency |
@ |
-922,337,203,685,477.5808 do 922,337,203,685,477.5807 |
łańcuch znaków |
String |
$ |
1 do 65400 (stała długość) 0 do ok. 2 mld. (zmienna długość) |
data |
Datę |
1 styczeń 100 do 31 grudzień 9999 | |
dowolny |
Variant |
jak Double lub String o zmiennej długości | |
użytkownika |
Type | ||
tablica |
Array |
do 60 wymiarów |
W przypadku zaokrąglania liczba dokładna S stanowiąca daną wejściową jest reprezentowana przez liczbę stałopozycyjną postaci
S =
scncn_p--cxCQ.c_xc_2---c_m, gdy 0 < c_m_, <-p,
(1.5)
sc„cn_v--cxc0.c_xc_2---c_m+p , gdy -p<c_m_x<p.
Maksymalny błąd bezwzględny dla tego sposobu przedstawienia liczby wynosi
8m = max|,S - Ś| = 0.5 p~'" (1-6)
w przypadku zaokrąglenia liczby oraz
'>M=P
(1.7)
w przypadku obcięcia zapisu liczby będącej daną wejściową. Reprezentacja zmiennopozycyjna liczby ma postać:
Z = s - M ■ pL , j e {+ 1,-1},
natomiast cecha ma postać
ckck-\-"cico » c, (I
Przykładowo, liczba w reprezentacji zmiennopozycyjnej o pojedynczej i podwć precyzji zapisu może być przechowywana w rejestrach komputera jako liczba o podstt l> 2 w postaci:
dla pojedynczej precyzji (IEEE 32 bity)
znak |
cecha |
mantysa |
(lbit) |
(8 bitów) |
(23 bity) |
numer bitu: 31 30 22 dla podwójnej precyzji (IEEE 64 bity)
znak |
cecha |
mantysa |
(1 bit) |
(11 bitów) |
(52 bity) |
numer bitu: 63 62 51
W przypadku reprezentacji zmiennopozycyjnej graniczny błąd bezwzględny ( i względny eM dla obcięcia i zaokrąglenia liczb w danych wejściowych można wyznacz w następujący sposób. Dokładna liczba stanowiąca daną wejściową jest w przypadku zaokrąglania reprezentowana przez liczbę zmiennopozycyjną o postaci
Ż = s ■ M ■ pc , (1.1
gdzie
M =
°-cic2 •••£,„> gdy
0 ■C\C2"-cm+ P~m,
0 - cm+\ <^P> gdy |p<cm+i<p.
Błąd bezwzględny jest wówczas równy
8m = max|z - Ż| = 0.5 •■ pc . (1.1!
Natomiast w przypadku, gdy liczby w danych wejściowych podlegają obcięciu otrzymuj się
5m = max|z — Ż| = p~m ■ pc . (l.H