من از پردازندهی ۶۴ بیتی اینتل استفاده میکنم. برنامهی زیر رو نوشتم برای نشون دادن نمایش عدد اعشاری
float *f = new float();
int *i = new int();
i = reinterpret_cast<int *>(f);
std::bitset<32> *bs;
std::cin>>*f;
bs = new std::bitset<32>(*i);
std::cout<<*bs<<" == "<<*f<<std::endl;
خروجی برای عدد 23.5 برابر 01000001-10111100-00000000-00000000
شده که بنا بر دونستههای قبلی از نحوهی ذخیرهسازی عدد اعشاری اشتباهه. چرا؟
هیچ پژوهش انسانی نمیتواند ادعای علمی بودن داشته باشد، مگر اینکه از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)