IEEE-Gleitpunktzahlen < Numerik < Hochschule < Mathe < Vorhilfe
|
Aufgabe | Betrachte ein akademisches Gleitpunktsystem [mm] R(2,t,E_{1},E_{2}), [/mm] dessen Elemente entsprechend IEEE durch 6 Bit mit folgender Aufteilung codiert werden:
1 Bit für das Vorzeichen, 2 Bit für "fraction", 3 Bit für die Charakteristik c = e + b
(IEEE entsprechend die Verschiebung b = [mm] 2^{t-1}-1.)
[/mm]
Trage die nicht-negativen Elemente von R auf der reellen Achse ein. |
Hallo,
ich bin Anfänger in der Numerik und mit dieser Aufgabe leider gänzlich überfordert. Ich würde sie gerne vollends verstehen und nicht nur lösen. Vielleicht kann mir jemand helfen, das wäre toll!
Liebe Grüße
Athanasius
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
> Betrachte ein akademisches Gleitpunktsystem
> [mm]R(2,t,E_{1},E_{2}),[/mm] dessen Elemente entsprechend IEEE durch
> 6 Bit mit folgender Aufteilung codiert werden:
> 1 Bit für das Vorzeichen, 2 Bit für "fraction", 3 Bit
> für die Charakteristik c = e + b
> (IEEE entsprechend die Verschiebung b = [mm]2^{t-1}-1.)[/mm]
> Trage die nicht-negativen Elemente von R auf der reellen
> Achse ein.
> Hallo,
> ich bin Anfänger in der Numerik und mit dieser Aufgabe
> leider gänzlich überfordert. Ich würde sie gerne
> vollends verstehen und nicht nur lösen. Vielleicht kann
> mir jemand helfen, das wäre toll!
>
> Liebe Grüße
> Athanasius
Hallo und
Zwar habe ich diese Bezeichnungsweisen "akademisches"
Gleitpunktsystem, "fraction", "Charakteristik" so noch gar
nie angetroffen, aber ich habe mich mal kurz zum Thema
im Netz umgeschaut (etwa eine Viertelstunde lang) und
habe jetzt doch ein paar ziemlich konkrete Vorstellungen
davon, wie das gemeint sein könnte.
Vorzeichen-Bit: v=0 für positive und v=1 für negative Zahl,
also $\ sgn(a)\ =\ [mm] (-1)^v$
[/mm]
"Fraction": ist sehr wahrscheinlich der hinter dem Punkt
stehende Teil der Mantisse, wobei diese aus insgesamt 3 Bits
bestehen soll, wovon aber das erste (das vor dem Punkt)
gar nicht angegeben werden muss, da es immer 1 ist.
Wir haben also offenbar die Basis 2, die Mantissenlänge
(insgesamt) t=3 und damit die "Verschiebung"
$\ b\ =\ [mm] 2^{t-1}-1\ [/mm] =\ [mm] 2^{3-1}-1\ [/mm] =\ [mm] 2^{2}-1\ [/mm] =\ 4-1\ =\ 3$
Damit ergibt sich auch, was wohl mit der "Charakteristik"
(was für seltsame Bezeichnungen da auch benützt werden ! )
gemeint ist: die ganze Zahl (dargestellt in Binärform),
welche sich ergibt, wenn man alle möglichen auftretenden
Exponenten so "verschiebt", dass sich nichtnegative
Werte ergeben (es soll ja kein zusätzliches Bit als
Vorzeichen des Exponenten verschwendet werden).
Um dies klar zu machen, betrachte ich zwei Beispiele:
1.) [mm] $\underbrace{\ O\ }_{\mbox{v}}\ \underbrace{\ \ O\ \ \ I}_{\mbox{frac}}\ \underbrace{\ \ I\ \ \ I \ \ \ O\ }_{\mbox{char}}$ [/mm]
Das Vorzeichenbit O sagt: das Vorzeichen der Zahl a ist
$\ sgn(a)\ =\ [mm] (-1)^0\ [/mm] =\ +1$ , mit anderen Worten: a>0
Hängen wir die "fraction" an eine führende I (vor dem Punkt) an,
so erhalten wir die gesamte Mantisse: m = I . O I , welche also
insgesamt aus 3 Bits besteht.
Die restlichen 3 Bits , also die "Charakteristik", ist binär I I O ,
was als ganze Zahl dezimal notiert c=6 ergibt. Nun soll ja
c=e+b sein , also folgt für den Exponenten:
$\ [mm] \mbox{e}\ [/mm] =\ c-b\ =\ 6-3\ =\ 3$
So, und nun kann man die Zahl a rekonstruieren:
$\ a\ =\ sgn(a)\ *\ I\ .\ O\ I\ *\ [mm] 2^{3}\ [/mm] =\ I\ .\ O\ I\ *\ I\ O\ O\ O\ =\ I\ O\ I\ O$
oder dezimal: $\ a\ =\ [mm] +\,10$
[/mm]
2.) [mm] $\underbrace{\ I\ }_{\mbox{v}}\ \underbrace{\ \ I\ \ \ O}_{\mbox{frac}}\ \underbrace{\ \ O\ \ \ O \ \ \ I\ }_{\mbox{char}}$ [/mm]
$\ sgn(a)\ =\ [mm] (-1)^1\ [/mm] =\ -1$ , mit anderen Worten: a<0
Mantisse m = I . I O
"Charakteristik" c = O O I = 1
Exponent $\ [mm] \mbox{e}\ [/mm] =\ c-b\ =\ 1-3\ =\ -2$
Also:
$\ a\ =\ (-1)\ *\ I\ .\ I\ O\ *\ [mm] 2^{-2}\ [/mm] =\ -\ I\ .\ I\ O\ *\ O\ .\ O\ I\ =\ -\ O\ .\ O\ I\ I$
als Bruch: $\ a\ =\ [mm] -\,\frac{3}{8}$
[/mm]
oder als Dezimalbruch: $\ a\ =\ [mm] -\,0.375$
[/mm]
Nun hoffe ich, dass ich dies richtig interpretiert habe.
Ich muss aber anmerken, dass mir die Details der IEEE - Norm
(bzw. -Normen) nicht bekannt sind. Insbesondere ist mir
wenigstens im Moment nicht ganz klar, wie man dort mit
der Null umgeht, die ja nicht als "normalisierte" Zahl
angegeben werden kann - doch auf die Null wird man
wohl in kaum einem vernünftigen System einfach
verzichten können !
Falls jemand Fehler bemerkt: bitte melden !
Die in der Aufgabenstellung noch vorkommenden
Werte [mm] E_1 [/mm] und [mm] E_2 [/mm] sollen sehr wahrscheinlich für den
kleinsten und größten Wert des Exponenten e stehen.
Ein möglicher Link:
www.mathe.tu-freiberg.de/~ernst/Lehre/Grundkurs/numerik2.pdf
LG , Al-Chw.
|
|
|
|
|
RIFPA (von 1987)
IEEE-Standardisierung betr. Gleitpunkt-Arithmetik (seit 2008)
Da werden die IEEE - Normen 854 (ältere Version)
und 754 (seit 2008) erklärt, welche seit einiger Zeit
dazu dienen sollen, den vorherigen Wildwuchs in der
Zahlendarstellung in Computern auszulichten.
Da wird auch erläutert, wie die Null (bzw. +0 und -0)
sowie [mm] +\infty [/mm] , [mm] -\infty [/mm] codiert werden und wie die NaN
("Nicht-Zahlen") zustande kommen.
LG , Al-Chw.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 12:15 So 20.10.2013 | Autor: | felixf |
Moin Al,
> Falls jemand Fehler bemerkt: bitte melden !
hab keinen gefunden :)
LG Felix
|
|
|
|
|
Vielen Dank für die ausführliche Erläuterung, so langsam wird es klarer! :)
Bleibt denn "fraction" 0 1 für jedes beliebige a (was ja hier in der Aufgabe als positiv bedingt wird) gleich oder kann es sich auch ändern, also 1 0 oder 1 1?
Laut meinen Rechnungen bisher (es sind noch nicht alle) komme ich auf die weiteren positiven Zahlen 1. 5, 2. 10 und 3. 20, indem ich einfach die Charakteristik umgeändert habe, also
1. 0 0 1 1 0 0
2. wie schon erläutert 0 0 1 1 1 0
3. 0 0 1 1 1 1
Kann ich dies denn einfach so machen, um auf alle positiven möglichen Zahlen zu kommen? (Also weiter dann für die Charakteristik noch 4. 0 0 1 1 0 1, 5. 0 0 1 0 0 0, 6. 0 0 1 0 0 1, 7. 0 0 1 0 1 0, 8. 0 0 1 0 1 1 - und wenn die fraction verändert werden kann, natürlich noch mehr Möglichkeiten). Oder denke ich hier völlig falsch? Danke!
Liebe Grüße und einen schönen Sonntag!
|
|
|
|
|
> Vielen Dank für die ausführliche Erläuterung, so langsam
> wird es klarer! :)
>
> Bleibt denn "fraction" 0 1 für jedes beliebige a (was ja
> hier in der Aufgabe als positiv bedingt wird)
du beziehst dich doch jetzt nur auf das erste Beispiel,
das ich angegeben habe, oder ?
Grundsätzlich kann man doch die Sequenz der
insgesamt 6 Bits auf insgesamt [mm] 2^6=64 [/mm] Arten belegen.
Falls wir a>0 voraussetzen, bleibt die Hälfte davon
übrig, also [mm] 2^5=32 [/mm] (nämlich diejenigen "Bytes" , die
mit dem 0-Bit für v beginnen).
> gleich oder
> kann es sich auch ändern, also 1 0 oder 1 1?
Klar, für "frac" gibt es insgesamt [mm] 2^2=4 [/mm] Möglichkeiten.
OO hast du noch vergessen.
> Laut meinen Rechnungen bisher (es sind noch nicht alle)
> komme ich auf die weiteren positiven Zahlen 1. 5, 2. 10 und
> 3. 20, indem ich einfach die Charakteristik umgeändert
> habe, also
> 1. 0 0 1 1 0 0
> 2. wie schon erläutert 0 0 1 1 1 0
> 3. 0 0 1 1 1 1
> Kann ich dies denn einfach so machen, um auf alle positiven
> möglichen Zahlen zu kommen? (Also weiter dann für die
> Charakteristik noch 4. 0 0 1 1 0 1, 5. 0 0 1 0 0 0, 6. 0 0
> 1 0 0 1, 7. 0 0 1 0 1 0, 8. 0 0 1 0 1 1 - und wenn die
> fraction verändert werden kann, natürlich noch mehr
> Möglichkeiten). Oder denke ich hier völlig falsch? Danke!
Im Prinzip geht dies schon so - Details möchte ich mir
aber lieber dann anschauen, wenn ich mir selber auch
eine Liste erstellt habe.
Ganz schlüssig bin ich mir noch nicht, was die "nicht
normalisierbaren" Zahlen betrifft, also jene, bei denen
man vor dem Punkt keine (verborgene) 1 hat, sondern
eine 0 . Das wären die mit c=0 .
Auch die Zahlen mit c=7= "I I I" sind nach IEEE keine
"echten" positiven Zahlen, sondern entweder INF
oder NaN .
Deshalb gehört wohl die Zahl $\ [mm] 20_{dez}\ [/mm] =\ I\ O\ I\ O\ O\ _{bin}$ , welche
hier in diesem System "O O I I I I" ergeben würde,
schon nicht mehr zu den brauchbaren positiven Zahlen,
sondern zu den "NaN"s ....
> Liebe Grüße und einen schönen Sonntag!
Ja, der ist ja schon bald wieder rüber - also gute neue
Woche !
Al-Chw.
|
|
|
|