Lebegőpontos számábrázolás |
A koproci hogyan ábrázolja a lebegőpontos számokat?
Panther
Lebegőpontosan tárolt számokat általában akkor használunk, ha
Általános formában:
e | k | m |
---|
Típus | Pontosság | Hossz | Biteloszlás | Nulla pont | Pascal | C |
---|---|---|---|---|---|---|
Egyszerű pontosság | 6-7 jegy | 32 bit | 1-8-23 | 127 | single | float |
Dupla pontosság | 15-16 jegy | 64 bit | 1-11-52 | 1023 | double | double |
Bővített pontosság | 19 jegy | 80 bit | 1-15-1-63 | 16383 | extended | longdouble |
A koprocesszor is ezeket a formátumokat támogatja.
A Pascal nyelvben létezik még egy real típus is, amelynél szoftveres úton számol a fordító program, ezért használata nem igényli a koprocesszort, de ugyanakkor sokkal lassabb kódot eredményez. Ezen típus adatai:
Típus | Pontosság | Hossz | Biteloszlás | Nulla pont | Pascal | C |
---|---|---|---|---|---|---|
Szoftveres | 11-12 jegy | 48 bit | 1-39-8 | 129 | real | - |
Hogy a tárolás teljesen egyértelmű legyen, oldjunk meg egy konkrét példát:
Ábrázoljuk a 13,625-t egyszerű potossággal!
0 | 100 0001 0 | 101 1010 0000 0000 0000 0000 |
---|
4 | 1 | 5 | A | 0 | 0 | 0 | 0 |
00 | 00 | 5A | 41 |
---|