prev up next

Previous: Codierung Up: Gleitkommazahlen (float, double) Next: Konstantenbezeichner

Operatoren

+ : Gleitkomma $\times$ Gleitkomma $\rightarrow$ Gleitkomma Addition
- : Gleitkomma $\times$ Gleitkomma $\rightarrow$ Gleitkomma Subtraktion
* : Gleitkomma $\times$ Gleitkomma $\rightarrow$ Gleitkomma Multiplikation
/ : Gleitkomma $\times$ Gleitkomma $\rightarrow$ Gleitkomma Division
% : Gleitkomma $\times$ Gleitkomma $\rightarrow$ Gleitkomma Modulo
++ : Gleitkomma $\rightarrow$ Gleitkomma Inkrement um 1.0
-- : Gleitkomma $\rightarrow$ Gleitkomma Dekrement um 1.0

Multiplikation: (Exponenten addieren, Mantissen multiplizieren)

Beispiel: $12$ $ *$ $20$ $=$    
  $1.5\cdot2^{3}$ $ *$ $1.25 \cdot 2^{4}$ $=$    
  $1.5\cdot 1.25$ $ *$ $ 2^{3} \cdot 2^{4}$ $=$    
  $1.875$ $ *$ $ 2^{7}$ $=$ $ 240$  

Addition: (Exponenten angleichen, Mantissen addieren)

Beispiel: $12$ $ +$ $20$ $=$    
  $1.5\cdot2^{3}$ $ +$ $1.25 \cdot 2^{4}$ $=$    
  $0.75 \cdot 2^{4}$ $ +$ $1.25 \cdot 2^{4}$ $=$    
  $(0.75 + 1.25)$ $ *$ $2^4$ $=$    
  $1$ $ *$ $2^5$ $=$ $32$  

Problem beim Angleichen der Exponenten:

Beispiel: $1024$ $ +$ $ \frac{1}{1048576} $ $=$    
  $1 \cdot 2^{10}$ $ +$ $1 \cdot 2^{-20}$ $=$    
  $1 \cdot 2^{10}$ $ +$ $2^{-30} \cdot 2^{10}$ $=$    
  $1 \cdot 2^{10}$ $ +$ $0 \cdot 2^{10}$ $=$ $1024$  

Bei $23$ Bits für die Mantisse ist $2^{-30}$ nicht mehr darstellbar.

Gleitkommaoperationen stoßen in Java keine Ausnahmebehandlung an. D.h., Division durch Null führt nicht zum Abbruch, sondern ergibt den Wert $+ \infty$ bzw. $- \infty$; Null dividiert durch Null ergibt NaN (not a number).


prev up next
Previous: Codierung Up: Gleitkommazahlen (float, double) Next: Konstantenbezeichner