DAVID MALAN: Mari kita sekarang meniup fikiran anda. Ia ternyata di dunia sebenar 1 dibahagikan sebanyak 10 memang 1/10, atau 0.1. Tetapi dalam komputer yang hanya mempunyai terbatas Bilangan bit dengan yang mewakili nombor, anda tidak boleh sentiasa mewakili nombor seperti 1/10 dengan ketepatan sempurna. Dalam erti kata lain, komputer kadang-kadang mempunyai untuk membuat panggilan penghakiman dan tidak semestinya mewakili nombor yang anda mahu sebagai tepat kerana anda berniat. Sebagai contoh, andaikan saya pergi semula ke program ini dan menukar 0.1 kepada, oh, 0.28, dan dengan itu menunjukkan bahawa Saya ingin printf untuk printf untuk 28 tempat ketepatan. Sekarang mari kita menyimpan dan menyusun program ini, kali ini dengan membuat floats2. Menjalankannya dengan dot slash floats2. Dan, Allah sayang, kali ini aku tidak melihat 0.1, tetapi 0.10000000, yang cukup baik setakat ini. Tetapi, 14901161193847656250. Nah, apa yang berlaku? Nah, ternyata bahawa apungan adalah biasanya disimpan di dalam komputer dengan 32 bit. 32 adalah jelas beberapa terhingga, yang menunjukkan bahawa anda hanya boleh mewakili dengan 32 bit beberapa terhingga terapung mata yang. Malangnya, ini bermakna bahawa komputer tidak boleh mewakili semua mungkin nombor titik terapung, atau nombor nyata, yang wujud di dunia, kerana ia hanya mempunyai begitu banyak bit. Dan jadi apa komputer adalah nampaknya dilakukan dalam kes ini mewakili 1/10 untuk terapung atau yang paling dekat nilai ketika itu ia boleh. Tetapi jika kita melihat, seperti yang kita ada di sini, kepada 28 tempat perpuluhan, kita mula melihat bahawa ketakpersisan. Jadi ini adalah masalah dengan ada penyelesaian yang sempurna. Kita boleh menggunakan dua daripada apungan, yang cenderung untuk menggunakan 64 bit sebagai berbanding 32. Tetapi sudah tentu, 64 adalah juga terhad, jadi masalah itu akan kekal walaupun dengan beregu.