Gleitkommazahlen Grundlagen
Einführung in die Gleitkommadarstellung
In der Computerprogrammierung sind Gleitkommazahlen eine Methode zur Darstellung reeller Zahlen mit gebrochenen Teilen. Im Gegensatz zu ganzen Zahlen können Gleitkommazahlen einen weiten Wertebereich mit Dezimalpunkten darstellen. In C werden diese typischerweise mithilfe des IEEE 754-Standards implementiert.
Binäre Darstellung
Gleitkommazahlen werden im Binärformat mit drei Hauptkomponenten gespeichert:
Komponente |
Beschreibung |
Bits |
Vorzeichen |
Gibt das positive oder negative Vorzeichen an |
1 Bit |
Exponent |
Stellt die Potenz von 2 dar |
8 Bits |
Mantisse |
Speichert die signifikanten Ziffern |
23 Bits |
graph TD
A[Gleitkommazahl] --> B[Vorzeichenbit]
A --> C[Exponent]
A --> D[Mantisse/Bruch]
Grundlegende Datentypen
C bietet verschiedene Gleitkommatypen:
float // Einzelpräzision (32 Bit)
double // Doppelpräzision (64 Bit)
long double // Erweiterte Präzision
Einfaches Beispiel
#include <stdio.h>
int main() {
float a = 0.1;
double b = 0.1;
printf("Float-Wert: %f\n", a);
printf("Double-Wert: %f\n", b);
return 0;
}
Hauptmerkmale
- Gleitkommazahlen haben eine begrenzte Genauigkeit
- Nicht alle Dezimalzahlen können exakt im Binärsystem dargestellt werden
- Rechenoperationen können kleine Fehler verursachen
Speichernutzung
Auf den meisten modernen Systemen mit LabEx-Entwicklungsumgebungen:
float
: 4 Byte
double
: 8 Byte
long double
: 16 Byte
Genauigkeitsbeschränkungen
Die Gleitkommadarstellung kann nicht alle reellen Zahlen exakt darstellen, da der binäre Speicher endlich ist. Dies führt zu potenziellen Genauigkeitsproblemen, die Entwickler sorgfältig verstehen und handhaben müssen.