DAVID Malan: Við skulum nú blása þinn hugur. Það kemur í ljós í hinum raunverulega heimi 1 skipt með því að 10 er örugglega 1/10, eða 0.1. En í tölvum sem aðeins hafa endanlegt fjöldi bita sem að táknað tölur, þú getur ekki alltaf táknar tölur eins og 1/10 með fullkominn nákvæmni. Með öðrum orðum, hafa tölvur stundum að dómur símtöl og ekki endilega tákna fjölda þér vil eins nákvæmlega og þú ætlar. Fyrir dæmi, ráð ég að fara aftur í Þetta forrit og breyta 0,1 til, ó, 0,28, á þann hátt sem gefur til kynna að Mig langar printf til printf til 28 stöðum nákvæmni. Skulum nú vistað og safna saman forrit, í þetta sinn með förðun floats2. Keyra það með punktur slash floats2. Og, kæri Guð, í þetta sinn ég sé ekki 0.1, en 0.10000000, sem er nokkuð gott svo langt. En þá, 14901161193847656250. Jæja, hvað er að gerast? Jæja, það kemur í ljós að fljóta er venjulega geymd inni í tölvunni með 32 bita. 32 er augljóslega endanlega fjölda sem felur í sér að þú getur aðeins táknað með 32 bita endanlegri fjölda af fleytitölum. Því miður, sem felur í sér að tölvan getur ekki táknað allt mögulegt fleytitölur eða rauntölur, sem ríkir í heiminum, því það hefur bara svo marga bita. Og svo hvað tölva er greinilega gert í þessu tilfelli er tákna: 1/10 til næst mögulegt fljótandi lið gildi sem það er hægt. En ef við skoðum, eins og við höfum hér, að 28 aukastafi, byrjum við að sjá að imprecision. Þannig að þetta er vandamál með engin fullkomin lausn. Við getum notað tvöfaldan í staðinn af a flot, sem hefur tilhneigingu til að nota 64 bita eins og öfugt við 32. En auðvitað, 64 er einnig tímabundið, svo er vandamálið mun vera jafnvel með tvíliðaleik.