Naar inhoud springen

Vastekommagetal

Uit Wikipedia, de vrije encyclopedie
Dit is een oude versie van deze pagina, bewerkt door Madyno (overleg | bijdragen) op 5 mrt 2019 om 12:19.
Deze versie kan sterk verschillen van de huidige versie van deze pagina.

In de informatica is een vastekommagetal een voorstelling van een getal door een vast aantal cijfers, waarin ook de positie van de decimale komma vastligt. Het vaste aantal cijfers bestaat dus uit een vast aantal cijfers vóór de komma, gebruikelijkerwijze de eerste , en een vast aantal, de rest, , achter de komma. In principe kan op deze manier slechts een aantal in grootte beperkte rationale getallen weergegeven worden. Tegenover vastekommagetallen staan zwevendekommagetallen, die een veel grotere variëteit aan getallen kunnen weergeven.

Vergelijking met zwevendekommagetallen

Rekenwerk

Door de vaste positie van de decimale komma is rekenwerk met vastekommagetallen aanzienlijk eenvoudiger in vergelijking met zwevendekommagetallen. In een binaire voorstelling met vaste komma kunnen rekenoperaties als vermenigvuldigen en delen uitgevoerd worden met snelle verschuivingsoperaties. Sinds het midden van de jaren 1990 zijn processors echter uitgerust met rekeneenheden voor zwevendekommagetallen, waardoor dit nadeel grotendeels is opgeeven.

Precisie en dynamiek

Vanwege de exacte weergave is het waardenbereik van een vastekommagetal bij hetzelfde aantal bits kleiner dan het overeenkomstige bereik van zwevendekommagetallen. De precisie van vastekommagetallen ligt echter in het gehele waardenbereik vast, wat bij zwevendekommagetallen niet altijd het geval is. Voor sommige toepassing is het daarom nodig vastekommagetallen te gebruiken.

Voorbeelden

Vastekommagetallen van bits.

n = 4 k = 1 k = 2
bitpatroon binair decimaal binair decimaal
0000 000,0 0,0 00,00 0,00
0001 000,1 0,5 00,01 0,25
0010 001,0 1,0 00,10 0,50
0011 001,1 1,5 00,11 0,75
0100 010,0 2,0 01,00 1,00
0101 010,1 2,5 01,01 1,25
0110 011,0 3,0 01,10 1,50
0111 011,1 3,5 01,11 1,75
1000 100,0 4,0 10,00 2,00
1001 100,1 4,5 10,01 2,25
1010 101,0 5,0 10,10 2,50
1011 101,1 5,5 10,11 2,75
1100 110,0 6,0 11,00 3,00
1101 110,1 6,5 11,01 3,25
1110 111,0 7,0 11,10 3,50
1111 111,1 7,5 11,11 3,75

Merk op dat elk van de genoemde binaire patronen twee verschillende getallen, voorstelt, afhankelijk van de posite van dedecimale komma. Aangezien het aantal decimalen per definitie vastligt, hoeft de komma zelf niet weergegeven te worden.

In de volgende tabel staan nog enkele voorbeelden met bits en bits vóór de komma en achter de komma.

bitpatroon decimaal
00000000 0,0000
00010000 1,000
01010000 10,000
00000001 0,0625
00001010 0,625
00001000 0,500
11111111 15,9375
01111011 7,6875
00001101 0,8125

De getallen voor de komma kan men eenvoudig begrijpen. De decimalen kunnen begrepen worden uit de volgende redenering. Binair is:

0000,0001 × 10000 = 1,0000

Decimaal staat hier:

0,???? × 16 = 1, dus
0,???? = 1/16 = 0,0625.