Fixed-Point Arithmetik

Fixed-Point Arithmetik

Eine Festkommazahl ist eine Zahl, die aus einer festen Anzahl von Ziffern besteht. Die Position des Dezimalkommas ist dabei fest vorgegeben, daher der Name.

Der Grundgedanke hinter Festkommazahlen ist die exakte Darstellung ohne Rundungsfehler eines Ausschnitts der rationalen Zahlen. Üblicherweise sind per Definition die ersten n \leq k Stellen Vorkommastellen und die restlichen m = kn Nachkommastellen. Aufgrund der exakten Darstellung sind die Wertebereiche aller Festkommazahlen jeweils kleiner als der jeweilige Wertebereich einer Gleitkommazahl derselben Länge.

Inhaltsverzeichnis

Performance-Betrachtung

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.

Beispiele

Alle binären Festkommazahlen der Länge k = 2 mit n \in \{0,1,2\} Vorkommastellen:

  • 00
  • 01
  • 10
  • 11

(Man beachte, dass jedes der aufgelisteten binären Muster für jeweils drei unterschiedliche Zahlen steht, je nachdem für welche Stelle das Komma impliziert wird.) Da die Anzahl der Vorkommastellen ja bereits per Definition fest liegt, ist es unnötig, das sonst übliche Komma zu schreiben beziehungsweise zu speichern.

Rechnen mit Festkommazahlen

Bei der Rechnung mit Festkommazahlen wird verfahren wie bei der Rechnung mit ganzen Zahlen. Die Position des Kommas ist bei der Addition und Subtraktion nicht von Belang. Bei der Multiplikation und der Division muss jedoch eine Korrektur durchgeführt werden.

Anwendungsbeispiele

Die folgenden Beispiele gehen von einer dezimalen Festkommadarstellung aus, bei der zwei Nachkommastellen vorgesehen sind. Dies wird durch den Faktor 100 ausgedrückt, mit denen die ursprünglichen Werte multipliziert wurden, um die Festkommadarstellung zu erhalten.

Addition
6{,}3\times{}100 + 2,1\times{}100 = 8{,}4\times{}100
Subtraktion
6{,}3\times{}100 - 2,1\times{}100 = 4{,}2\times{}100
Multiplikation
6{,}3\times{}100 \times{} 2,1\times{}100 = 13{,}23\times{}100\times{}100
Hier ist das Ergebnis keine Festkommazahl nach denselben Kriterien wie die beiden Faktoren; eine Korrektur ist notwendig (hier: Division durch 100).
Division
\frac{6{,}3\times{}100}{2{,}1\times{}100} = 3
Hier ist das Ergebnis keine Festkommazahl nach denselben Kriterien wie Dividend und Divisor; eine Korrektur ist notwendig (hier: Multiplikation mit 100).

Probleme

Bei der Darstellung einer reellen Zahl z kann es einige Probleme geben. Im folgenden hat die Festkommazahl (angelehnt an die Darstellung in einem Rechner) eine Länge von k = 8 und n = m = 4 Vor- und Nachkommastellen. Der Ziffernvorrat sei {0,1} - also eine binäre Festkommazahl der Länge eines Bytes mit gleich vielen Vor- und Nachkommastellen. Der tiefgestellte Index bezeichnet die Darstellung der Zahl: XR für eine reelle Zahl in üblicher Dezimaldarstellung und XF für eine derartige Festkommazahl.

  • 0R = 00000000F
  • 1R = 00010000F
  • 10R = 10100000F
  • 0,5R = 00001000F
  • 0,625R = 00001010F
  • 0,0625R = 00000001F
  • 15,9375R = 11111111F
  • 16R > 11111111F
  • 0,06R < 00000001F
  • 7,7_R \approx 01111011_F

Wie man sieht, können also mit 8 Bits und 4 Vor- und Nachkommastellen nur Festkommazahlen zwischen 0R und 15,9375R (bei einer Auflösung von 0,0625R) dargestellt werden. Dieser geringe Darstellungsbereich ist auch der entscheidende Nachteil gegenüber Gleitkommazahlen.

Weiterhin entstehen wie auch bei Gleitkommazahlen Rundungsfehler bei der Umwandlung der dezimalen, reellen Zahlen in eine binäre Festkommadarstellung. 7R = 01110000F kann im Gegensatz zu 0,7_R \approx 00001011_F exakt dargestellt werden. 0,7R kann allerdings bei noch so vielen Nachkommastellen nicht als Summe von Zweierpotenzen dargestellt werden. Um diese Probleme zu umgehen, kann aber bei Bedarf eine dezimale Festkommadarstellung eingesetzt werden.

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Fixed-Point-Arithmetik — Eine Festkommazahl ist eine Zahl, die aus einer festen Anzahl von Ziffern besteht. Die Position des Dezimalkommas ist dabei fest vorgegeben, daher der Name. Der Grundgedanke hinter Festkommazahlen ist die exakte Darstellung ohne Rundungsfehler… …   Deutsch Wikipedia

  • mathematics — /math euh mat iks/, n. 1. (used with a sing. v.) the systematic treatment of magnitude, relationships between figures and forms, and relations between quantities expressed symbolically. 2. (used with a sing. or pl. v.) mathematical procedures,… …   Universalium

  • Mathematical logic — (also known as symbolic logic) is a subfield of mathematics with close connections to foundations of mathematics, theoretical computer science and philosophical logic.[1] The field includes both the mathematical study of logic and the… …   Wikipedia

  • George Boolos — Infobox Person name = George Boolos birth date = birth date|1940|9|4|mf=y birth place = New York, New York, U.S. death date = death date and age|1996|5|27|1940|9|4|mf=y death place = Cambridge, Massachusetts, U.S.George Stephen Boolos (September… …   Wikipedia

  • George Boolos — George Stephen Boolos (4 de septiembre de 1940, Nueva York – 27 de mayo de 1996) fue un filósofo y estudioso de lógica matemática que enseñó en el Massachusetts Institute of Technology. Contenido 1 Vida 2 Trabajo 3 Véase también …   Wikipedia Español

  • Logic and the philosophy of mathematics in the nineteenth century — John Stillwell INTRODUCTION In its history of over two thousand years, mathematics has seldom been disturbed by philosophical disputes. Ever since Plato, who is said to have put the slogan ‘Let no one who is not a geometer enter here’ over the… …   History of philosophy

  • Phenomenology (The beginnings of) — The beginnings of phenomenology Husserl and his predecessors Richard Cobb Stevens Edmund Husserl was the founder of phenomenology, one of the principal movements of twentieth century philosophy. His principal contribution to philosophy was his… …   History of philosophy

  • Emmy Noether — Amalie Emmy Noether Born 23 March 1882(1882 03 23) …   Wikipedia

  • Convergence problem — In the analytic theory of continued fractions, the convergence problem is the determination of conditions on the partial numerators ai and partial denominators bi that are sufficient to guarantee the convergence of the continued fraction This… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”