Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

ieee754 - zaokrąglanie liczby

Wojtek001 06 Lis 2014 09:06 663 3
  • #1 06 Lis 2014 09:06
    Wojtek001
    Poziom 15  

    Jak wygląda zaokrąglanie liczby zmiennoprzecinkowej np w kodzie ieee754 ?
    Np jeśli mamy ułamek 0.1 który ma nieskończone okresowe rozwiniecie w systemie dwojkowym a ja muszę zapisać go na skończonej liczbie bitów , to poprostu go ucinam czy musze zachować jakieś zaokrąglanie ?

    Interesuje mnie jak to się odbywa na najniższym poziomie , podejrzewam ze jest ucinane bez zaokraglania ?
    Pytam dlatego bo mam do napisania algorytm który podaje cześć ułamkową liczby na 8 bitach. W zadaniu proszą mnie żebym zadbał "o prawidłowe zaokrąglanie " , jak to rozumieć?

    0 3
  • #2 06 Lis 2014 10:26
    ShinsPL
    Poziom 13  

    Z reguły to, co nie mieści się na wystarczającej ilości bitów po prostu jest tracone. Polecenie zrozumiałbym tak (wytłumaczę na liczbie dziesiętnej): Jak masz 23.4 i odcinasz końcówkę to zostawiasz 23, a jak masz 23.7 i odcinasz końcówkę, to powinno dać 24. W systemie dwójkowym zapewne zaokrąglenie powinno być takie: 101.0 ~ 101, a 101.1 ~ 110 (1 na miejscu części dziesiętnej zaokrągli 1 na miejscu jedności do 2, ale że to system dwójkowy to trzeba przenieść).

    0
  • #3 06 Lis 2014 12:34
    Wojtek001
    Poziom 15  

    Akurat program przyjmuje tylko wartości mniejsze od 1.
    W zasadzie może to tylko dodatkowy wymysł so tego zadania.


    Ale np. (Abstrahując od poprzedniego) mam polecenie zapisać liczbę -12.8 w binarnym z częścią ulamkowa na 8 bitach. No i mam zaokraglac czy nie ?

    0