SORU
23 ŞUBAT 2011, ÇARŞAMBA


şamandıra vs çift duyarlıklı

Aşağıdaki kodu

  float x = 3.141592653589793238;
  double z = 3.141592653589793238;
  printf("x=%f\n", x);
  printf("z=%f\n", z);
  printf("x= .18f\n", x);
  printf("z= .18f\n", z);

size çıktı verecektir

x=3.141593
z=3.141593
x=3.141592741012573242
z=3.141592653589793116

nereden çıktı üçüncü satırına 741012573242 çöp ve dördüncü satırında 116 çöp. Çiftler her zaman her zaman 7 anlamlı sayılar var yüzer ise 16 önemli rakamlar var mı? Neden çiftler 14 anlamlı rakamlar yok mu?

CEVAP
23 ŞUBAT 2011, ÇARŞAMBA


C kayan nokta sayıları IEEE 754 kodlama kullanın.

Bu tür kodlama bir işaret, bir significand bir değer kullanır.

Bu kodlama nedeniyle, çok sayıda onlar saklanmasını sağlamak için küçük değişiklikler olacak.

Ayrıca, anlamlı basamak sayısı ikili temsili bir decimal değil olduğundan biraz değiştirebilir.

Tek duyarlıklı (kaydır) fonksiyonu, 8 bit significand ve 1 işareti bit 23 bit verir.

Çift duyarlıklı () çift üs, 11 significand biti ve 1 İşaret biti 52 bit verir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Semantic Mastery

    Semantic Mas

    30 EKİM 2013
  • TeachMeComputer

    TeachMeCompu

    31 EKİM 2009
  • ThisWeekYT

    ThisWeekYT

    14 Mart 2013