0 Daumen
2,1k Aufrufe

Aufgabe:

GKZ1: 1 1001 0101 010 1100 0000 0000 0000 0000

GKZ2: 1 0011 1111 110 1000 0000 0000 0000 0000

Berechnen Sie GKZ1 · GKZ2.


Problem/Ansatz: wie macht  man das?

Avatar von

3 Antworten

+2 Daumen

chek this up

at the end of the video ~ 22min

Avatar von

habe es immer noch nicht verstanden

Ich sehe gerade : der vorletzten Block ist
beide Male nur dreistellig. Ist das richtig ?

+2 Daumen

Nimm an es seien Binärzahlen gegeben. Wandele diese in Dezimalzahlen um, multiplziere sie und wandele das Produkt wieder in Binärzahlen um.

Avatar von
+1 Daumen

Hallo,

GKZ1: 1 1001 0101 010 1100 0000 0000 0000 0000
GKZ2: 1 0011 1111 110 1000 0000 0000 0000 0000

So wie die Folge von 0'en und 1'en oben dargestellt ist, vermute ich, dass es sich um die Darstellung einer Gleitkommazahl im IEEE-754 big-endian Format mit 32Bit handelt.

Das erste Bit gibt das Vorzeichen. 0 steht für positiv und 1 für negativ. Die nächsten 8Bit bilden den Exponenten und der Rest die Mantisse ohne die führende 1. Bei 32Bit ist der Exponent 8Bit lang, somit ist \(r=8\) und der Biaswert \(B=2^{8-1}-1=\text{7F}_{16}\). Das bedeutet für die erste Zahl \(z_1\)$$z_1 <0, \quad  e_1=1001 0101_2 - B = 95_{16} - \text{7F}_{16} = 16_{16}, \quad m_1=1,010 11_2 \\ \implies z_1 = -1,01011_2 \cdot 2^{22} = -5636096$$und für die zweite \(z_2\)$$z_2 \lt 0, \quad e_2 = 0011 1111_2 - B = 3F_{16} - \text{7F}_{16} = -40_{16}, \quad m_2 = 1,110 1_2 \\ \implies z_2 = - 1,110 1_2 \cdot 2^{-64} \approx -9,82558 \cdot 10^{-20} $$beim Multiplizieren solltest Du tunlichst nicht(!) die (vollständige) Dezimaldarstellung verwenden, sondern am besten eine rationale Darstellung. Du kannst das auch schreiben als $$z_1 \cdot z_2 = 1,01011_2 \cdot 2^{22} \cdot 1,110 1_2 \cdot 2^{-64} = \frac{43}{32} \cdot \frac {29}{16} \cdot 2^{22-64} \\ \quad = \frac{1247}{2^9} \cdot 2^{-42} = 10,011011111_2 \cdot 2^{-42}  = 1,0011011111_2 \cdot 2^{-41} $$

Das Ergebnis in IEEE-754 ist dann:$$\underbrace{0}_{=+} \quad \underbrace{0101 \,0110}_{=-41+B} \quad \underbrace{001 \,1011 \,1110 \,0000 \,0000 0000}_{=m-1,000\dots_2}$$

Avatar von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community