Festkommazahl
Eine Festkommazahl ist eine Zahl, die aus einer festen Anzahl von Ziffern besteht. Die Position des Kommas ist dabei fest vorgegeben, daher der Name.
Der Grundgedanke dahinter ist die informationstechnische Repräsentation eines Ausschnitts der rationalen Zahlen. Diese Abbildung auf einen begrenzt großen Datentypen, typischerweise Integer verschiedener Bitbreiten, erfordert eine feste Anzahl von Ziffern für den Vorkomma- wie den Nachkommaanteil. Üblicherweise sind per Definition die ersten Stellen Vorkommastellen und die restlichen Nachkommastellen. In der Informatik haben die dezimalen wie die binären Festkommazahlen eine große praktische Bedeutung.
1 Vor- und Nachteile gegenüber einer Gleitkommazahl
1.1 Performance-Betrachtung
1.2 Präzision und Dynamik
2 Repräsentationsbeispiel: Binäre Festkommazahl
3 Rechnen mit Festkommazahlen
3.1 Anwendungsbeispiele
4 Probleme
7 Referenzen
Vor- und Nachteile gegenüber einer Gleitkommazahl[Bearbeiten]
Durch die feste Position des Dezimalkommas fällt Rechenaufwand im Vergleich zur Rechnung mit Gleitkommazahlen weg. Wird in einem Computerprogramm eine binäre Festkommadarstellung gewählt, können zudem die zur Umrechnung und Korrektur notwendigen Multiplikationen und Divisionen durch schnelle Schiebeoperationen ersetzt werden. Ein Beispiel für eine Applikation, die gezielt aus Rechenaufwandsgründen mit Festkomma-Arithmetik entworfen wurde, ist z. B. Fractint, ein Fraktalgenerator.[1] Seit Mitte der 1990er Jahre haben Prozessoren dedizierte Gleitkommarechenwerke, die dazu führen, dass die Berechnung von Fraktalen mit Gleitkommazahlen schneller als die mit Ganzzahlen ist.
Präzision und Dynamik[Bearbeiten]
Aufgrund der exakten Darstellung ist der Wertebereich einer Festkommazahl kleiner als der jeweilige Wertebereich einer Gleitkommazahl derselben (Bit-)Länge. Dafür ist jedoch die Exaktheit der Darstellung einer Zahl im gesamten Wertebereich gesichert, bei Gleitkommazahlen nicht immer (z. B. durch Absorption[2]). Ein Beispiel für eine Anwendung, die aufgrund der nötigen exakten Darstellung Festkommazahlen verwendet, ist GnuCash[3].
Repräsentationsbeispiel: Binäre Festkommazahl[Bearbeiten]
Alle binären Festkommazahlen der Länge mit Vorkommastellen:
Binärmuster
Binär
Dezimal