13 Ocak 2015 Salı

Gerçek Sayı Sistemleri

 Sistemlerin  çoğu  gerçek  sayıları  IEEE  754 standardına  göre  tutarlar.  (Institute  of  Electrical  and
Electronics Engineers)Bu standarda göre gerçek sayılar için iki ayrı format belirlenmiştir:
single precision format (tek hassasiyetli gerçek sayı formatı)
Bu formatta gerçek sayı 32 bit (8 byte) ile ifade edilir.
32 bit üç ayrı kısma ayrılmıştır.
1. İşaret biti (sign bit) (1 bit)
Aşağıda S harfi ile gösterilmiştir.
İşaret biti 1 ise sayı negatif, işaret biti 0 ise sayı pozitiftir.
2. Üstel kısım (exponent) (8 bit)
Aşağıda E harfleriyle gösterilmiştir.
3. Ondalık kısım (fraction) (23 bit)
Aşağıda F harfleriyle gösterilmiştir.
S EEEEEEEE FFFFFFFFFFFFFFFFFFFFFFF
31 30-----------23 22-------------------------------------0
Aşağıdaki formüle göre sayının değeri hesaplanabilir :
V sayının değeri olmak üzere:
E = 255 ise ve F 0 dışı bir değer ise V = NaN (Not a number) bir gerçek sayı olarak kabul edilmez. Örnek :
0 11111111 00001000000100000000000 = Sayı değil
1 11111111 00010101010001001010101 = Sayı değil
E = 255 ise ve F = 0 ise ve S = 1 ise V = -sonsuz
E = 255 ise ve F = 0 ise ve S = 1 ise V = +sonsuz
0 < E < 255 ise
V = (-1)
S
* 2
(E -127)
* (1.F)
Önce sayının fraction kısmının başına 1. eklenir. Daha sonra bu sayı 2
(E-127)
ile çarpılarak noktanın yeri
ayarlanır. Noktadan sonraki kısım 2'nin artan negatif kuvvetleriyle çarpılarak elde edilecektir. Örnekler :
0 10000000 00000000000000000000000 = +1 * 2
(128 - 127)
* 1.0
= 2 * 1.0
= 10.00
= 2
0 10000001 10100000000000000000000 = +1 * 2
(129 - 127)
* 1.101
= 2
2
* 1.101
= 110.100000
= 6.5
1 10000001 10100000000000000000000 = -1 * 2
(129 - 127)
* 1.101
= -2
2
* 1.101
= 110.100000
= -6.5
0 00000001 00000000000000000000000 = +1 * 2
(1 - 127)
* 1.0
= 2
-126
E = 0 ve F sıfır dışı bir değer ise
V = (-1)
S
* 2
(-126)
* (0.F)
Örnekler :
0 00000000 10000000000000000000000 = +1 * 2
-126
* 0.1
=
0 00000000 00000000000000000000001 = +1 * 2
-126
0. 00000000000000000000001
E = 0 ve F = 0 ve S = 1 ise V = -0
E = 0 ve F = 0 ve S = 0 ise V = 0
double precision format (çift hassasiyetli gerçek sayı formatı)
Bu formatta gerçek sayı 64 bit (8 byte) ile ifade edilir.
64 bit üç ayrı kısıma ayrılmıştır.
1. İşaret biti (sign bit) (1 bit)
Aşağıda S harfi ile gösterilmiştir.
İşaret biti 1 ise sayı negatif, işaret biti 0 ise sayı pozitiftir.
2. Üstel kısım (exponent) (11 bit)
Aşağıda E harfleriyle gösterilmiştir.
3. Ondalık kısım (fraction) (52 bit)
Aşağıda F harfleriyle gösterilmiştir.
S EEEEEEEEEEE FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
63 62------------------52 51-----------------------------------------------------------------------------0
Aşağıdaki formüle göre sayının değeri hesaplanabilir :
Aşağıdaki formüle göre sayının değeri hesaplanabilir :
V sayının değeri olmak üzere:
E = 2047 ise ve F 0 dışı bir değer ise V = NaN (Not a number) bir gerçek sayı olarak kabul edilmez.
E = 2047 ise ve F = 0 ise ve S = 1 ise V = -sonsuz
E = 2047 ise ve F = 0 ise ve S = 1 ise V = +sonsuz
0 < E < 2047 ise
V = (-1)
S
* 2
(E -1023)
* (1.F)
Önce sayının fraction kısmının başına 1. eklenir. Daha sonra bu sayı 2
(E-1023)
ile çarpılarak noktanın yeri
ayarlanır. Noktadan sonraki kısım 2'nin artan negatif kuvvetleriyle çarpılarak elde edilecektir.
E = 0 ve F sıfır dışı bir değer ise
V = (-1)
S
* 2
(-126)
* (0.F)
E = 0 ve F = 0 ve S = 1 ise V = -0
E = 0 ve F = 0 ve S = 0 ise V = 0

0 Yorum:

Yorum Gönder