Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

9 c) - Zahlendarstellung

+1 Punkt
308 Aufrufe
Was ist an folgender Argumentation falsch?
Angenommen, ich will z mit einer Aufteilung der 16 Bits auf 1 Bit Vorzeichen, 6 Bits Charakteristik und 9 Bits für die Mantisse (sodass diese wieder exakt der Mantisse von z aus Aufgabenteil a) entspricht, also kein Fehler auftritt) darstellen.

Für q bei dieser Aufteilung gilt q = 2^5 - 1 = 31.
Der Exponent e beträgt (aus Aufgabenteil a) ) -61. Somit ergibt sich für die Charakteristik c = e + q = -61 + 31 = -30. Dieser Wert für c kann in der Zweierkomplementdarstellung mit 6 Bits aber doch dargestellt werden! Es ergibt sich der 6 stellige Binärstring 100010, der somit den Wert der Charakteristik darstellt! Die Mantisse kann dann auch übernommen werden, sodass sich mit einer Aufteilung der 16 Bits auf 1 Bit Vorzeichen, 6 Bits Charakteristik und 9 Bits für die Mantisse die ursprüngliche Zahl z exakt darstellen lässt als

z' = 1 100010 120100001

Ist mit dieser Erklärung die Begründung in der Lösung nicht falsch? Ich denke, dass der Fehler dort darin liegt, dass die 6 Bit Charakteristik nicht den Exponenten -61 sondern den Exponenten c = e + q = -61 + 31 = 30 darstellen muss, also in der Lösung einfach das q vergessen wurde?

Vielen Dank im Voraus für die Hilfe und liebe Grüße!
Gefragt 14, Feb 2016 in 2014-H-09 von ufehp ufehp Lernwillige(r) (230 Punkte)  
Kategorie geändert 14, Feb 2016 von ufehp ufehp
2014-H-08 ist eine BDD-Aufgabe
danke, hatte auf die 8 Punkte der Aufgabe geschaut und das verwechselt.
2014-H-07 ist eine Huffman-Kodierung ;)
sorry, jetzt sollts passen, so wie es auch in der Frage steht, Aufgabe 9 c)

2 Antworten

0 Punkte
Hallo ufehp,

deine Rechnungen sind soweit richtig. Das Problem ist aber, dass du die Charakteristik c= -30 nicht darstellen kannst, da die Charakteristik vorzeichenfrei und immer positiv ist. Damit wir dennoch negative Exponenten darstellen können, verwenden wir ja die "Verschiebungs-Darstellung" (also das q). Der Exponent -61 ist allerdings mit der 6-Bit-Charakteristik nicht darstellbar.

Viele Grüße,

Tim
Beantwortet 14, Feb 2016 von ukean ukean Tutor(in) (103,140 Punkte)  
0 Punkte
Hallo ufehp!

Dein Fehler liegt ganz einfach darin, dass bei der IEEE-Darstellung die Charakteristik nicht als Zahl in der Zweierkomplementdarstellung interpretiert wird, sondern als ganz normaler Binärstring. Deine Charakteristik "100010" entsprich dann nicht dem Wert -30 ( = - 32 + 2), sondern dem Wert 34 ( = 32 + 2), wodurch die geforderte Zahl z nicht genau darstellbar ist.

Außerdem taucht in deiner Mantisse eine "2" auf, was bei einer binären Zahlencoderung natürlich nicht vorkommen darf, aber ich nehme mal an, dass das sicher nur ein Tippfehler ist, oder?

Viele Grüße
Janine (Tutorin)
Beantwortet 14, Feb 2016 von uedqi uedqi Tutor(in) (108,510 Punkte)  
Hallo,
In der Lösung steht "Das Vorzeich Bit wird benötigt zur Darstellung der Negativität" heisst das, dass wenn z positiv wäre konnte man das fehlende Bit der Mantisse von Vorzeichen nehmen ?
und wie bestimmt man den Bereich von Exponenten , den ein n Bit Charakteristik darstellen kann ?
für n=6, c kann minimal gleich 0 sein oder ? was e=-31 gibt
Und maximal (111111) = 63 im Dezimalsystem was e= 32 als obere Schranke gibt
...