aitap |
Re: IEEE754 25.09.2020, 16:30 |
|
09/05/16 138
|
|
|
|
|
IvanX |
Re: IEEE754 25.09.2020, 18:14 |
|
01/03/20 46
|
Последний раз редактировалось IvanX 25.09.2020, 18:24, всего редактировалось 3 раз(а).
Не имел ввиду принудительное округление. Давайте рассмотрим конкретный пример. Складываем два числа x=1 и y=1+2^(-23) типа float. Сумма x+y не может быть представлена типом float, лежит посередине между 2 и 2+2^(-22). Эксперимент в Visual Studio на C++ показал, что произошло округление суммы до 2. Это был какой режим? Так будет везде и всегда? Как из программы можно изменить режим округления?
|
|
|
|
|
slavav |
Re: IEEE754 25.09.2020, 18:39 |
|
Заслуженный участник |
|
26/05/14 981
|
Это было округление к чётному. Что вам мешает написать программу которая запустив четыре (если я не обсчитался) примера установит какой режим используется?
|
|
|
|
|
IvanX |
Re: IEEE754 25.09.2020, 19:00 |
|
01/03/20 46
|
Последний раз редактировалось IvanX 25.09.2020, 19:04, всего редактировалось 3 раз(а).
Кажется, начал понимать. Пусть x=1+2^(-22) и y=1+2^(-23). Сумма лежит посередине между 2+2^(-22) и 2+2^(-21). Эксперимент показывает, что сумма округляется до 2+2^(-21). Потому в этом случае в мантиссе младший бит 0.
|
|
|
|
|
GAA |
Re: IEEE754 25.09.2020, 19:19 |
|
Заслуженный участник |
|
12/07/07 4522
|
|
|
|
|
Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы