1 00:00:00,000 --> 00:00:00,310 2 00:00:00,310 --> 00:00:01,750 >> DAVID MALAN: Dezagun kolpe en orain zure gogoan. 3 00:00:01,750 --> 00:00:06,500 Bihurtzen mundu erreala 1 banatzen da 10 1/10, edo 0,1 da, hain zuzen. 4 00:00:06,500 --> 00:00:10,370 Baina ordenagailuetan bakarrik izan duten finitua bit kopurua zein den 5 00:00:10,370 --> 00:00:14,290 zenbakiak irudikatzeko, ezin duzu beti 1/10 bezalako zenbakiak irudikatzeko dituzten 6 00:00:14,290 --> 00:00:15,500 doitasun ezin hobea. 7 00:00:15,500 --> 00:00:18,640 Beste era batera esanda, ordenagailuak batzuetan epaiketa deiak eta ez egiteko 8 00:00:18,640 --> 00:00:22,740 nahitaez irudikatzeko kopuruaren duzu nahi baita, hain zuzen, nahi duzun bezala. 9 00:00:22,740 --> 00:00:27,020 >> Esate baterako, eman dezagun atzera jo dut sartu programa hau eta 0,1 era aldatzeko, 10 00:00:27,020 --> 00:00:32,073 oh, 0.28, horrela adierazten duten Nuke printf hemen printf 11 00:00:32,073 --> 00:00:34,350 28 Zehaztasun-lekuak. 12 00:00:34,350 --> 00:00:39,330 Utzi gorde eta programa konpilatu orain en, make floats2 denbora honetan. 13 00:00:39,330 --> 00:00:41,910 Exekutatu dot barra floats2 batera. 14 00:00:41,910 --> 00:00:49,980 Eta, Jainko maitea, une honetan ez dut ikusten 0.1, baina 0.10000000, hau da, nahiko 15 00:00:49,980 --> 00:00:51,070 ona hain urruti. 16 00:00:51,070 --> 00:00:57,830 Baina, ondoren, 14901161193847656250. 17 00:00:57,830 --> 00:00:58,880 >> Beno, zer gertatzen da? 18 00:00:58,880 --> 00:01:02,280 Beno, bihurtzen da mugikor bat dela normalean ordenagailu baten barruan gordetzen 19 00:01:02,280 --> 00:01:03,500 32 bit-ekin. 20 00:01:03,500 --> 00:01:07,340 32 kopuru mugatu batean, da, jakina, eta horrek dakar duzula bakarrik irudikatzeko daiteke 21 00:01:07,340 --> 00:01:11,050 32 bit kopuru mugatu batekin puntua balioak flotatzen. 22 00:01:11,050 --> 00:01:14,980 Zoritxarrez, horrek esan nahi du ordenagailua ezin irudikatzeko guztiak posible 23 00:01:14,980 --> 00:01:18,110 puntu mugikorreko zenbakien edo zenbaki errealak, duten munduko existitzen, 24 00:01:18,110 --> 00:01:19,980 bit hainbeste bakarrik egiten duelako. 25 00:01:19,980 --> 00:01:23,940 >> Eta beraz, zer da ordenagailua itxuraz kasu honetan, egiten den irudikatzeko 1 / 10era 26 00:01:23,940 --> 00:01:26,880 hurbileneko posible mugikorreko puntuaren balioa, ahal dela. 27 00:01:26,880 --> 00:01:31,050 Baina dugu begiratuz gero, hemen izan dugun bezala, 28ra dezimalekin, hori ikusteko hasten gara 28 00:01:31,050 --> 00:01:31,970 imprecision. 29 00:01:31,970 --> 00:01:34,480 Beraz, hau arazo bat da irtenbide perfektua ez. 30 00:01:34,480 --> 00:01:38,060 Ordez karroza baten bikoitz bat erabili ahal izango dugu, horietatik 64 bit gisa erabili ohi 31 00:01:38,060 --> 00:01:39,410 32 aurka. 32 00:01:39,410 --> 00:01:42,290 Baina noski, 64 ere finitua da, beraz arazoa izango 33 00:01:42,290 --> 00:01:43,630 jarraituko dute, are gehiago bikoitzak batera. 34 00:01:43,630 --> 00:01:46,323