Fakat 0 da aynısını gösteriyor. Bu ikisini ayırmak mümkün mü yoksa bizim 0.99999... = 1 dediğimiz gibi bu kadar küçük bir sayı = 0 mı diyor bilgisayar?
2 üzeri -127 işleminin sonucunda 0.000…(39 tane sıfır) ve devamında belirli rakamlar geliyor. Print fonksiyonunun hassasiyeti yetmiyordur bunu göstermeye.
Ayarlamak için mesela C’de:
C:
printf(“%.50Lf”, number);
Bu şekilde “0.”dan sonraki basamak sayısını verirsen gerçek değeri görebilirsin.
Bilgisayar icin 2 uzeri -127 sifir degil, hayir. int a = 2^1-127 dediysen yada yeterince precision tanimlamadiysan 0 goreceksin cunku sayinin kendisi virgulden sonra ki 39. basamakta basliyor.
Kendin soyle test edebilirsin bilgisayarin onu sifir olarak degerlendirip degerlendirmedigini;
Python:
print((2 ** -127) == 0) # Cikti False olacak
C++:
std::cout << (std::powl(2, -127) == 0); // Cikti 0 olacak. Alternatif olarak false.