faecher:informatik:oberstufe:codierung:zahlendarstellungen:gleitkommazahlen:start

Dies ist eine alte Version des Dokuments!


Gleitkommazahlen

Um die Einschränkung der Festkommazahlen aufzuheben, dass dort nur Brüche mit 2er-Potenmzen im Nenner exakt dargestellt werden können benötigt man eine weitere Zahlendarstellung. Diese funktioniert allerdings grundlegend anders als die bisherige binäre Zahldarstellung (Binär, Zweierkomplement, Festkommazahlen). Damit ein Computer mit solchen „neuen“ Zahlen rechnen kann, benötigt man eine angepasste elektronische Schaltung, die sogenannte FPU 1).

Jede endliche Dezimalzahl kann man in der Form M • 10 E schreiben.

dabei heißt M „Mantisse“ und E „Exponent“.

  • Die Mantisse ist eine Dezimalzahl, die stets eine Ziffer zwischen 1 und 9 vor dem Komma besitzt.
  • Der Exponent ist eine Ganze Zahl

Beispiele:

  • 435,861 = 4,35861 * 102 (Mantisse 4,25861, Exponent 2)
  • 0,0003562 = 3,562 * 10 4 (Mantisse 3,562, Exponent 4)

Die Norm IEEE 754 (ANSI/IEEE Std 754-1985; IEC-60559:1989 – International version) definiert Standarddarstellungen für binäre Gleitkommazahlen in Computern und legt genaue Verfahren für die Durchführung mathematischer Operationen, insbesondere für Rundungen, fest.

Die Darstellung einer Gleitkommazahl x = s ⋅ m ⋅ b e

besteht aus:

  • Vorzeichen s (1 Bit)
  • Mantisse m (p Bits)
  • Basis b (bei normalisierten Gleitkommazahlen nach IEEE 754 ist b = 2)
  • Exponent e (r Bits)

Ein wesentlicher Unterschied zur Dezimadarstellung ist also, dass Mantisse, Exponent binär dargestellt werden, und die Basis der Potenz 2 ist. Das Vorzeichenbit ist so definiert, dass s=0 positive Zahlen darstellt, s=1 negative Zahlen.

An das Mantissenbitmuster wird links stets eine 1 angehängt: 1,m. Das Bitmuster der Mantisse m steht also nur für negative 2er-Potenzen. Damit spart man sich ein Bit Speicherplatz (und gewinnt damit ein Bit an Genauigkeit) weil man sich diese erste 1 immer „denkt“.

Durch die Normalisierung kann man wie bei den dezimalen Fließkommazahlen diesen Zustand immer erreichen, so dass die Mantisse mit der vorangestellten 1 auf der Stelle 20 immer zwischen 1 und 2 ist - so wie bei den Dezimalzahlen immer zwischen 1 und 9 sein kann.


1)
Floating Point Unit, siehe auch https://de.wikipedia.org/wiki/Gleitkommaeinheit
  • faecher/informatik/oberstufe/codierung/zahlendarstellungen/gleitkommazahlen/start.1663168854.txt.gz
  • Zuletzt geändert: 14.09.2022 17:20
  • von sbel