+1 Daumen
1,7k Aufrufe

Aufgabe:

$$ \begin{array}{l}{\text { Gegeben seien eine Basis } b \in \mathbb{N} \backslash\{1\} \text { sowie die Anzahl } l \in \mathbb{N} \text { der Mantisse bzw. }} \\ {m \in \mathbb{N} \text { des Exponenten. Für } x \neq 0 \text { heift }} \\ {\qquad x=v_{M} \cdot\left(\sum_{i=1}^{l} \alpha_{i} \cdot b^{-i+1}\right) \cdot b^{v_{E} \cdot \sum_{i=1}^{m} \beta_{i} \cdot b^{m-i}}}\end{array} $$

$$ \begin{array}{l}{\text { mit } \alpha_{i}, \beta_{i} \in\{0,1, \ldots, b-1\}, v_{M}, v_{E} \in\{+,-\} \text { sowie } \alpha_{1} \neq 0 \text { eine codierbare Maschi- }} \\ {\text { nenzahl und }} \\ {\qquad v_{M} \alpha_{1} \cdot \alpha_{2} \ldots \alpha_{l} \operatorname{Ev}_{E} \beta_{1} \beta_{2} \ldots \beta_{m}} \\ {\text { die normalisierte Gleitpunktdarstellung von } x . \text { Die Menge aller solchen Maschinen- }} \\ {\text { zahlen inklusive } x=0 \text { wird mit } \mathbb{M}=\mathbb{M}(b, l, m) \text { bezeichnet. }}\end{array} $$

$$ \begin{array}{l}{\text { a) Geben Sie die Zahlen } x=3.2598 \text { und } y=0.0026179 \text { mit Hilfe der normalisierten }} \\ { \text { Gleitpunktdarstellung bzgl. M( }10,5,1) \text { an. }}\end{array} $$

$$ \begin{array}{l}{\text { b) Berechnen Sie fur die Zahlen } x=3.2598 \text { und } y=0.0026179 \text { mit } x, y \in \mathbb{M}(10,5,1)} \\ {\text { die Ausdrücke } x+y, x-y, x \cdot y \text { sowie } x: y . \text { Geben Sie an, ob die exakten }} \\ {\text { Ergebnisse wiederum in der Menge } \mathbb{M}(10,5,1) \text { liegen? Was bedeutet dies für die }}\end{array} $$

$$ \text { Abgeschlossenheit von } \mathbb{M}(b, l, m) \text { bzgl. der Operationen }+,-, \cdot \text { und : } ? $$

Problem/Ansatz:

Bin mit der Aufgabenstellung überfordert und bräuchte mal n Tipp wie man da vorgehen muss, und was mir die Aufgabenstellung sagen soll.

Danke.

Avatar von

1 Antwort

0 Daumen

Hallo Rapiz,

a) Geben Sie die Zahlen x=3.2598 und y=0.0026179 mit Hilfe der normalisierten  Gleitpunktdarstellung bzgl. M( 10,5,1) an.

Bei \(\mathbb{M}(10,5,1)\) ist die Basis =10, d.h. wir brauchen nichts umwandeln. \(v_M=+\), das sollte klar sein. Jetzt ist noch die Forderung, dass \(\alpha_1 \ne 0\) sein soll. D.h. die Mantisse soll als eine Zahl im Intervall \([1;b[\) dargestellt werden. Dies ist aber bei x=3.2598 bereits der Fall - es bleibt bei$$x = +3.2598E+0$$\(+0\) als Exponent, da die Mantisse lediglich mit \(1 = 10^{+0}\) multipliziert werden muss, um zum \(x\) zu kommen. Bei  der Darstellung von \(y\) müssen wir lediglich das Komma um 3 Stellen verschieben und im Exponenten deshalb eine \(-3\) hinzufügen$$y = +2.6179E-3$$

b) Berechnen Sie fur die Zahlen x=3.2598 und y=0.0026179 mit x,y∈M(10,5,1) die Ausdrücke x+y,x−y,x⋅y sowie x:y.

$$x+y=3,2624179, \quad x-y=3,2571821$$Da die Mantisse nur 5 Stellen beinhaltet, muss nun gerundet werden. Es bleibt$$x+y \approx +3.2624E+0, \quad x-y\approx3,2572E+0$$achte bei \(x-y\) auf die letzte Stelle, hier habe ich aufgerundet.$$x \cdot y = 0,00853383042, \quad x \div y \approx 1245,1965315711066121700599717331$$die zweite Zahl lässt sich auch mit beliebig vielen Stellen nicht mehr exakt darstellen. Aber wir müssen beide sowieso runden$$x \cdot y \approx +8.5338E-3, \quad x \div y \approx +1.2452E+3$$

Was bedeutet dies für die Abgeschlossenheit von M(b,l,m)?

\(\mathbb{M}\) ist bezüglich keiner der vier Grundrechenarten abgeschlossen. Denn in jedem Fall kann als Ergebnis eine Zahl heraus kommen, die nicht in \(\mathbb{M}\) liegt.
Gruß Werner

Avatar von 48 k

Wie würde man die Zahlen jetzt in der Formel darstellen??

Also b ist die Basis die der Wert ist dem der Exponent zugewiesen wird?

(Zahl die umgerechnet werden soll, Mantisse ) *10 ^(x+y)

Was ist das l ?

Soll ja anscheinend die Zahlen mittels l=5 variablen darstellen

Wie würde man die Zahlen jetzt in der Formel darstellen??

Upps! - naiv wie ich bin, dachte ich genau das in meiner Antwort angegeben zu haben! Die Formel lautet:$$x=v_{M} \cdot \left(\sum_{i=1}^{l} \alpha_{i} \cdot b^{-i+1}\right) \cdot b^{v_{E} \cdot \sum_{i=1}^{m} \beta_{i} \cdot b^{m-i}}$$wenn \(x=3,2598\) dann ist \(v_M=+\) und \(v_E=+\) und \(\alpha_1=3\), \(\alpha_2=2\), \(\alpha_3=5\), \(\alpha_4=9\) und \(\alpha_5=8\). Sowie \(\beta_1=0\)

Also b ist die Basis die der Wert ist dem der Exponent zugewiesen wird?

Ja - und \(b\) ist auch die Basis für die Stellen der Mantisse. Für \(x=3,2598\) ist$$m = 3\cdot 10^0 + 2\cdot 10^{-1} + 5\cdot 10^{-2} + 9 \cdot 10^{-3} + 8 \cdot 10^{-4}$$die 10 ist die Basis für dieses Stellensystem.

(Zahl die umgerechnet werden soll, Mantisse ) *10 ^(x+y) Was ist das l ?

Ich verstehe die Frage nicht - nach \(10^{x+y}\) war auch nicht gefragt.

Soll ja anscheinend die Zahlen mittels l=5 variablen darstellen

Die Mantisse soll aus \(l\) Stellen bestehen. Wen man eine Zahl in einem Computer in einem Register ablegt, muss man sich auf irgendwas beschränken. Wenn Du z.B. eine Zahl hast wie \(1/3 = 0,\overline{3}\), musst Du irgendwann Abstriche machen, wenn Du sie als Dezimalzahl ablegen willst!

Wozu ist dann der zweite Term da, wenn man diesen anscheinen gar nicht verwendet?

Im Endeffekt hat man jetzt nur die Klammer benutzt, die nicht Abgeschlossenheit gilt also immer, verstanden, weil man immer eine Zahl herausbekommen kann die nicht, der Mantissenlänge entspricht.

Wozu ist dann der zweite Term da, wenn man diesen anscheinen gar nicht verwendet?

Das was Du als 'zweiten Term' bezeichnest, ist der Exponent. Und den habe ich sehr wohl benutzt. Ich schrieb:

... und \(v_E=+\)  ... sowie \(β_1=0\)

und mehr ist da nicht, da hier \(m=1\) ist, da \(\mathbb{M} = \mathbb{M}(10,5,\colorbox{#ffff00}{1})\) $$ b^{v_{E} \cdot \sum_{i=1}^{m} \beta_{i} \cdot b^{m-i}} = 10^{\sum_{i=1}^1 \beta_i^{m-1}} = 10^0=1$$

... weil man immer eine Zahl herausbekommen kann die nicht, der Mantissenlänge entspricht.

und auch der Exponent ist beschränkt. Eine Zahl wie \(10^{12}\) bekommt man in \(\mathbb{M}(10,5,1)\) nicht unte; ebenso weinig wie \(10^{-17}\). Ersteres ist ein klassischer 'overflow' und letzteres wird ggf. auf 0 gerundet, wobei noch zu klären wäre, wie die \(0\) darzustellen ist.

Moment, also wäre die Formel so $$(3⋅10^{0}+2⋅10^{−1}+5⋅10^{−2}+9⋅10^{−3}+8⋅10^{-4})*10^0$$

Moment, also wäre die Formel so:$$(3⋅10^{0}+2⋅10^{−1}+5⋅10^{−2}+9⋅10^{−3}+8⋅10^{-4})*10^0$$

ja, wenn Du alle Zahlen einsetzt. Das ist der Wert für \(x= 3,2598\); rechne's doch einfach aus.
Und in der geforderten normalisierten Gleitkommadarstellung (s.o.)$$x = +3.2598E+0$$bezüglich \(\mathbb{M}(10,5,1)\).

ok, danke hab es soweit verstanden, wie sehe es dann bei der anderen Aufgabe aus?

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community