0 Daumen
455 Aufrufe

Aufgabe:

Ich soll folgende Aussage überprüfen:

$$ \text { Die Zahl } 0.1 \text { ist in } \mathbb{M}(2,32,-99,99) \text { exakt darstellbar. } $$


Problem/Ansatz:

Wie gehe ich da genau ran? Manchmal kann man es ja recht einfach überprüfen, indem man die nicht normalisierte Darstellung der Zahl in der gegebenen Basis findet, aber bei Kommazahlen habe ich leider immer Probleme :) Weiß jemand evtl ein Verfahren wo man das für beliebige Basen und Mantissenlängen prüfen kann?


Danke ;)

Avatar von

Was ist \(\mathbb{M}(\cdot)\)?

Hallo, Bei uns ist $$ \mathbb{M}(2,32,-99,99) $$ mit 2 = Basis b

32 = Mantissenlänge m

-99,+99 r und R ist Bereich des Exponenten.


Tut mir leid, wusste nicht, dass das nicht allgemein genormt ist :)

Wenn die Basis b=2 ist, dann ist 0.1 = 0.11002 × 2-3 und damit wegen der Periode nicht exakt darstellbar. Meinst du das?

Genau, ich hatte mich gefragt ob man das irgendwie allgemein für beliebige Zahlen bestimmen kann :)

1 Antwort

0 Daumen
 
Beste Antwort

Wir wissen schonmal, dass \( 0.1 \) irgendeine Binärdarstellung hat, sei es
\(\begin{aligned} 0.1=\sum \limits_{i=1}^{\infty} \alpha_{i} 2^{-i}, \quad \alpha_{i} \in\{0,1\}\end{aligned} \)
(Wenn \( 0.1 \) eine endliche Darstellung hat, so sind die \( \alpha_{i} \) ab einem gewissen Punkt einfach alle 0). Um nun \( \alpha_{1} \) herauszufinden, können wir beide Seiten mit 2 multiplizieren, also
\(\begin{aligned} 0.2=\sum \limits_{i=1}^{n} \alpha_{i} 2^{-i+1}=\alpha_{i}+\sum \limits_{i=1}^{n} \alpha_{i-1} 2^{-i}\end{aligned} \)
da \( \alpha_{1} 2^{-1+1}=\alpha_{1} \). Da nun aber die linke Seite, also \( 0.2 \), kleiner als 1 ist, muss \( \alpha_{1}=0 \) gelten, sonst hätten wir einen widerspruch. Wenn du man zum Punkt kommt, dass die Multiplikation mit 2 dazu führt, dass die linke Seite größer als 1 wird, so ist das dazugehörige \( \alpha \) also 1 , und du subtrahierst also die 1 und machst mit den Zahlen hinter dem Komma weiter (solange diese noch ungleich 0 sind). Diesen Prozess kann man nun fortführen, wir interessieren uns jedoch lediglich dafür, wieviele \( \alpha_{i} \neq 0 \) sind, also insbesondere suchen wir jenes \( n \) für welches \( 2^{n} \cdot 0.1 \) eine ganze Zahl ist, wenn denn ein solches existieren sollte.
\(\begin{aligned} 2^{n} \cdot 0.1=k \in \mathbb{N} \Longrightarrow 2^{n}=10 k \Longrightarrow 2^{n} \bmod 10=0 \Longrightarrow 5 \mid 2^{n}\end{aligned} \)
Nun ist jedoch die Primfaktorzerlegung von \( 2^{n} \) ebenfalls \( 2^{n} \), da 2 eine Primzahl ist, und 5 kommt in dieser Primfaktorzerlegung für kein \( n \in \mathbb{N} \) vor. Dies beduetet also insbesondere, dass kein solches \( n \in \mathbb{N} \) existiert, die binäre Darstellung von \( 0.1 \) also unendlich ist, sie also nicht exakt darstellbar ist in einem endlichen Zahlensystem.

Avatar von 4,8 k

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community