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

  • Art Food Kitty - Kelly Eddington

    Art Food Kit

    7 Kasım 2006
  • jocc talking shit

    jocc talking

    6 NİSAN 2007
  • Viktorija A.

    Viktorija A.

    28 Mart 2009