Учеба и наука

Решено

Для хранения вещественного числа используется ячейка памяти размером 4 байта. Размер поля для хранения абсолютной величины мантиссы числа - вопрос №2656573

составляет 20 битов. Каково максимальное число, которое можно сохранить в такой ячейке?

ноябрь 13, 2017 г.

  • Всего ответов: 1

  • Константин - аватарка

    Константин

    4-й в

    4 байта = 32 бита (4х8)

    32-20=12 бит на порядок

    20 бит — максимальная мантисса ‭1048575‬… но это если мы не учитываем знак (отрицательные значения), а если учитываем, тогда один бит на знак «вынь да положь» то есть 19 бит - ‭524287‬ максимальное значение

    (виндовый калькулятор в режиме " программист" поможет нам все это видеть наглядно — все биты в 1, это максимальное значение и есть - https://i.imgur.com/kdul3x1.png)

    12 бит на порядок - ‭4095‬, но снова знак!, и если мы говорим о реальной жизни, то опять 1 бит на знак, тогда 11 бит и максимум — 2047

    таким образом, максимальное значение, может быть +524287‬ *2^2047

    на самом деле, в качестве основания для порядка, может быть использована любая величина. просто если использовать основания больше 2, будет больше погрешность при изменении порядка. с другой стороны, очевидно что +524287‬ *10^2047 в 5^2047 раз больше чем +524287‬ *2^2047

    дальше, на практике такого типа значения используют, полагая что мантисса это знаки после запятой, то есть макисмально приближенный к реальности ответ будет примерно таким

    +0,9999980926513671875‬ *2^2047 (0,9999980926513671875 это 524287‬/524288‬)

    а это меньше в 2^19 (‭524288‬) раз

    для примера инфа о реально используемом формате (ссылка на вики)

    ноябрь 14, 2017 г.
    Ответ понравился автору
    Лучший ответ по мнению автора

Похожие вопросы