Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Определение разрядности числа
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
Dmitry Dubrovenko
Что-то я малость затупил. rolleyes.gif
Для обычного числа всё понятно.
А вот какая разрядность будет у числа с плавающей точкой?
Правильно ли я понимаю, что если, например, мантисса 10-битная, а экспонента 3-битная, то число получается 17-битным?
paskal
Мантисса на разрядность не влияет. Разрядность определяется величиной экспоненты.
iiv
Цитата(Dmitry Dubrovenko @ Aug 3 2014, 12:45) *
Правильно ли я понимаю, что если, например, мантисса 10-битная, а экспонента 3-битная, то число получается 17-битным?

если мантисса 10 бит, и мантисса приведена к диапазону 0.5-1, то для хранения достаточно 9 бит, так как первый бит всегда равен единице, далее надобно по одному биту на знак и на знак экспоненты, итого всего получится только 9+1+1+3=14 бит.
svss
Цитата(iiv @ Aug 4 2014, 00:42) *
если мантисса 10 бит, и мантисса приведена к диапазону 0.5-1, то для хранения достаточно 9 бит, так как первый бит всегда равен единице, далее надобно по одному биту на знак и на знак экспоненты, итого всего получится только 9+1+1+3=14 бит.

Рассуждение хорошее, вопросов нет.
Но топикстартер не написал что такое число в его понимании и не объяснил свою логику получения 17-ти бит.

Я (скромно) полагаю, что три бита экспоненты включают знак, а мантисса обрезается до понятия "число" по мере необходимости.
Итого от 4х бит до бесконечности (с потерей точности). Ну, либо - Вы правы - 12..14 бит без потерь.
Dmitry Dubrovenko
Примерно подобный диалог у меня вышел и с нашим программистом. rolleyes.gif

Привожу цитату из даташита на ЦАП:
Цитата
It can generate analog output (dynamic range 16 bits) having 10-bit mantissa section and 3-bit exponent section on the basis of input digital signal.


16, а не 17, т.к. значение 0, для экспоненты, запрещено.

Всем спасибо.
Вопрос закрыт.
Hose
Все поняли? Надо на инглише ответ писать, тогда он правильнее)

Для двоичной системы: ceil(log2(M*2^E) = 17
Для десятеричной системы: ceil(log2(M*10^E) = 34

Знак уже учтен в мантиссе. -512..511 или 0..1023 в 10 разрядах.
Dmitry Dubrovenko
Цитата(Hose @ Jan 9 2015, 12:20) *
Все поняли?
Поняли, поняли.
Человек хочет постов набить.
С Новым годом! santa2.gif
Hose
Цитата(Dmitry Dubrovenko @ Jan 9 2015, 18:51) *
Поняли, поняли.
Человек хочет постов набить.
С Новым годом! santa2.gif

И куда их девать, солить?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.