Регистрация | Последние сообщения | Персональный список | Поиск | Настройка конференции | Личные данные | Правила конференции | Список участников | Top 64 | Статистика раздела | faq | Что нового v.2.3 | Чат
Skunk Forum - Техника, Наука, Общество » Форум разработчиков РЭА »
Round problem

Версия для печати (настроить)

Новая тема | Написать ответ

Подписаться

Автор Тема:   Round problem
sash
Junior Member

Сообщений: 1
Регистрация: Март 2004

написано 10 Марта 2004 12:41ИнфоПравкаОтветитьIP

hello!

I have some problem that i can't solve alone.

I need to convert double type to an integer.
For this purpose i set CW to be round_to_nearest

and this operations

...
fld qword ptr [ d ]
fistp word ptr [ i ]
...

work perfect but problem with
doubles like X.5

if X is even like 2.5 it rounds down to 2
if X is odd like 3.5 it rounds up to 4

How can i solve it, i need that it will be round down always when i have X.5 i want to receive X?

Thanks.

Dikoy
Member

Сообщений: 362
Откуда: Богота, Колумбия
Регистрация: Май 2003

написано 10 Марта 2004 15:02ИнфоПравкаОтветитьIP

sash
In what tongue the answer to write? English? Russian?

sash
Junior Member

Сообщений: 2
Регистрация: Март 2004

написано 10 Марта 2004 15:40ИнфоПравкаОтветитьIP

Eto ne vaz'no.
Izvinite, prosta ya ne rabotayu s Russian locale.

Весельчак У
Moderator

Сообщений: 4916
Откуда: Санктъ-Питербурхъ
Регистрация: Декабрь 2000

написано 11 Марта 2004 02:44ИнфоПравкаОтветитьIP

sash
Уж лучше в транслитерации писать. Многим понятнее будет.
Uzh luchshe v transliteracii pisat'. Mnogim ponyatnee budet.

sash
Junior Member

Сообщений: 3
Регистрация: Март 2004

написано 11 Марта 2004 08:56ИнфоПравкаОтветитьIP

Весельчак У
Ok.
No vse je, mojet kto-nibud' znaet.
V specificaciyah intela napisano chto round to nearest, v spornom sluchae,
delaetsia k bliz'ayshemu chetnomu.
Moz'no li s etim borot'sia pri pomoshi flagov Control Word?

Ку!
Junior Member

Сообщений: 3
Откуда: SPb
Регистрация: Март 2004

написано 11 Марта 2004 13:50ИнфоПравкаОтветитьIP

Несложно, но медленно и печально: Преобразовываем к целому. Это вы уже делали. Ж:0) Сохраняем. Преобразовываем обратно в плавающий вид. Вычитаем преобразованное из даннного. Проверяем на больше (или меньше, как удобней) 0.5 и в зависимости от результата добавляем 1 к сохраненному.

Ваш ответ:

Коды форума
Смайлики


Ник:    Пароль       
Отключить смайлики

Все время MSK

Склеить | Разбить | Закрыть | Переместить | Удалить

Новая тема | Написать ответ
Последние сообщения         
Перейти к:

Свяжитесь с нами | skunksworks.net

Copyright © skunksworks.net, 2000-2018

Разработка и техническая поддержка: skunksworks.net


Рейтинг@Mail.ru Яндекс.Метрика