Archiv Prozessoren 8.660 Themen, 54.742 Beiträge

Fließkommaberechnung? was genau ist das?

Hausmeister Krause / 6 Antworten / Flachansicht Nickles

hallo!

ich würde gerne wissen was genau eine fließkommaberechnung ist. o.k., ich weiß, das das auf englisch fpu (floating point unit) heißt, und das die cyrix´s und die alten amds (k5/k6) in sachen fließkommaberechnung ziemlich lahm waren, und das intel fast immer die nase vor hatte, aber was genau verbirgt sich hinter dieser fließkommaberechnung???
bitte erklärt mir das so einfach und verständlich wie möglich.

viele dank im voraus von

Hausmeister Krause

(Anonym) Hausmeister Krause „Fließkommaberechnung? was genau ist das?“
Optionen

Tach, Herr Krause!

Wie ja bekannt ist, kann die CPU eigentlich nur eins: Bits (also Nullen und Einsen) sehr schnell bearbeiten.

Um Zahlen darstellen zu können, hat man einfach mehrere dieser Bits zusammen gefasst (zu Bytes). Mehrere dieser Bytes werden nun zu Gruppen zusammengestellt und dort kann man dann ganzzahlige Zahlen (Integer) kodieren.

Wie rechnen aber nicht nur mit ganzen zahlen, sondern häufig mit Bruchzahlen (also Zahlen, die Nachkommastellen haben).

OK, wie bekommt kann man die mit Hilfe von Integerwerten darstellen?

Im Prinzip kann man aus einer Bruchzahl eine kommalosen Wert machen, indem man die Bruchzahl einige Male mit 10 multipliziert. Mit jeder Multiplikation wandert das Komma um eine Stelle nach hinten.

-> Es "fliesst" durch die Ziffern

Ok, man zählt wie oft man multipliziert hat und speichert diesen Wert (= Exponent). Den Wert, der sich durch das Multiplizieren ergeben hat wird ebenfalls als Integerwert gespeichert (= Mantisse).

Im Prinzip muss man das Kommaverschieben auch machen, wenn zwei so kodierte Werte verrechnen werden. Und das dauert - jedenfalls im Verhältnis zu einenfachen Integer-Berechnungen (da entfällt ja das Kommageschubse). ;-)

Deshalb hat man die FPU entwickelt, die solche Operationen schneller ausführen können als die normale CPU.

Alle Klarheiten beseitigt?

Bis denn
Andreas

PS: Da die CPU ja nur 0 und 1 lkennt, multipliziert sie nicht mit dem Dezimalwert 10, sondern mit dem 2 - aber das Prinzip ändert sich deshalb nicht.