40.3. LI И SLI СИСТЕМЫ
LI (Level-Index)
SLI (Symmetric Level index)
Позволяют представлять очень большие или очень малые числа
В LI число представляется в виде:
X = (s,l,i), где
s - знак числа - 0 или 1
l - level - целое число от 0 и больше)
i - index - вещественное число в интервале [0,1)
Число выражается как:
X = (-1)^s * F(l,i), где
F(l,i) = e^i, если i = 0
= e^F(l-1,i), если i > 0
e - это основание для системы (как правило берут 2 или число 'e')
SLI
В SLI системе добавляется еще один дополнительный бит r (reciprocal) - 0 или 1
который определяет число так:
X{SLI}(s,r,l,i) = X{LI}(s,l,i), если r = 0
= 1/X{LI}(s,l,i), если r = 1
таким образом SLI позволяет представлять не только очень большие числа
но и очень малые.
Пример SLI чисел (основание е),
число 32-бит:
-------------------
1 бит sign
1 бит reciprocal
3 бита level
27 бит index
-------------------
-------------------------------------------------------------
s r l i represents the value
-------------------------------------------------------------
1 1 7 7FFFFFF negative infinity
1 0 7 7FFFFFE - 10^(10^(10^(10^(9.7*10^1656518))))
1 0 7 0000000 - 10^(10^(10^(1.01*10^1656520)))
1 0 6 0000000 - 10^(10^(1.01*10^1656520))
1 0 5 0000000 - 10^(1.01*10^1656520)
1 0 4 0000000 -2.3*10^1656520
1 0 3 7FFFFFF -7.2*10^1656519
1 0 3 0000000 -3814279.1
1 0 2 7FFFFFF -3814277.9
1 0 2 0000000 -15.1542622
1 0 1 7FFFFFF -15.1542619
1 0 1 0000000 -2.71828183 = -e
1 0 0 7FFFFFF -2.71828180
1 0 0 0000001 -1.0000000075
1 1 0 0000000 -1 (exact)
1 1 0 0000001 -0.9999999925
1 1 0 58B90BF -0.5000000028
1 1 0 58B90C0 -0.4999999990
1 1 1 0000000 -0.3678794411 = -1/e
1 0 0 0000000 -0 (not used)
0 0 0 0000000 0 (exact)
0 1 1 0000000 0.3678794411 = 1/e
0 1 0 7FFFFFF 0.3678794439
0 1 0 58B90C0 0.4999999990
0 1 0 58B90BF 0.5000000028
0 1 0 0000001 0.9999999925
0 1 0 0000000 1 (exact)
0 0 0 0000001 1.0000000075
0 0 0 58B90BF 1.999999988
0 0 0 58B90C0 2.000000003
0 0 0 7FFFFFF 2.71828180
0 0 1 0000000 2.71828183 = e
0 0 1 3CE9CCA 4.999999948 note 8 usable digits
0 0 1 3CE9CCB 5.000000008 and no exact value for 5
0 0 2 0000000 15.1542622 = e^e
0 0 3 0000000 3814279.1 = e^(e^e)
0 0 3 4389695 4.999954139*10^100 note 5 usable digits
0 0 3 4389696 5.000033872*10^100
1 1 0 0000000 infinity
-------------------------------------------------------------
Index Prev Next