Mnożenie liczb zmiennoprzecinkowych

0

Witam,
Mam pewien problem, może to nie jest powiązane bezposrednio z programowaniem, ale wystepuje na przedmiocie Wprowadzenie do Infrmatyki, a nie miałem pomysłu, na jakim innym forum zwrócić się z pytaniem.
Ktos potrafiłby wytłumaczyć/przedstawić krok po kroku jak wykonać te zadanie?
user image
Jak ja to rozumiem:
1100100110:
1 - znak liczby, czyli liczba bedzie ujemna
10010 - wykładnik w BIAS czyli 18-15=3 (od liczby odejmujemy przesuniecie BIAS dla 5bit) wiec E=3
0110 - mantysa w ZM czyli liczba 6
0100011001:
0 - znak liczby, czyli liczba bedzie dodatnia
10001 - wykladnik w BIAS czyli 17-15=2 wiec E=2
1001 - mantysa w ZM czyli -1
Dobrze to rozumiem? Co dalej z tym robic, w jaki sposob to przemnazac?

0

Pewnie czegoś tu nie rozumiem, ale znak masz w dwóch miejscach, mnożysz:

A = -6E3 * -1E2

(dwie ujemne liczby)

a wychodzi w zadaniu liczba ujemna. Błędna odpowiedź?

0

Ja też nie rozumiem, jeśli mantysa jest w kodzie ZM, to liczby są całkowite. Co tu ma do rzeczy format zmiennoprzecinkowy? I co oznacza zaokrąglanie?
Druga sprawa, z tego co wiem, przesunięcie BIAS nie jest na sztywno związane z ilością bitów. Wielkość przesunięcia trzeba podać.

0

Ale dlaczego mantysa jest w ZM, skoro znak jest zapisany na osobnym bicie?

0

To nie wiem, uwazacie, ze jest błąd w zadaniu? Takie przykładowe zadanie, które może być na kolokwium wrzucił nauczyciel.

0

Moim zdaniem zadanie jest błędnie sformułowane. Ja bym zadania tego typu rozwiązywał tak:

  • przeliczam liczby na układ dziesiętny,
  • mnożę (na kartce lub w kalkulatorze),
  • koduję dwójkowo, zaokrąglając jeśli jest to konieczne.
    W skrócie, mnożę liczby dziesiętne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1