![]() |
|
|
![]()
|
|
| Diabolus |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 12.6.2007 Репутация: нет Всего: нет |
Нужно делить числа с точностью хотя бы 50 знаков после запятой, ну и до запятой немного. Как это реализовать, если в eax после div'а столько не влезает?
Это сообщение отредактировал(а) Diabolus - 12.5.2010, 09:49 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
Использовать библиотеки работы со сверхдлинными числами.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Diabolus |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 12.6.2007 Репутация: нет Всего: нет |
А без них - никак? Вообще я здесь асм юзаю как асмовую вставку, поэтому если не получается без внешних библиотек, то проще уж будет чисто на сях написать.
Тема ещё актуальна, если у кого будут какие идеи - пишите. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
Есть и сишные либы работы со сверхдлинными...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| airyashov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 284 Регистрация: 1.7.2008 Репутация: 2 Всего: 6 |
вообще-то div это целочисленное деление причем тут запятая.
для того чтобы вам помочь нужно понять, зачем делить с такой точностью, если просто поделить и вывести проблем нет, а если потом требуется использовать такие числа, то это (1) +1 Это сообщение отредактировал(а) airyashov - 13.8.2008, 14:14 -------------------- icq:3(один)7748666 mail:airyashov( а )inbox.ru |
|||
|
||||
| Mikl_ |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 9.11.2007 Репутация: 8 Всего: 14 |
Diabolus используй fpu или mmx инструкции
|
|||
|
||||
| nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: нет Всего: 31 |
Ну или в крайнем случае нарисуй свои функции на асме для деления - там ничего особо сложного нет.
-------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
| Diabolus |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 12.6.2007 Репутация: нет Всего: нет |
Mikl_, пытался с FPU, но не вышло :(
|
|||
|
||||
| Mikl_ |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 9.11.2007 Репутация: 8 Всего: 14 |
Diabolus, в чем проблемы? В masm32 специальные библиотеки для работы с fpu. Можно конечно предварительно умножить число на 10 в n-ой степени, а уже потом делить. Да и с mmx не очень сложно разобраться - было бы желание
|
|||
|
||||
| Supersedes |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 29.7.2008 Репутация: нет Всего: нет |
Diabolus, а как ты пытался?
Я например попробовал вот так (на FASM):
все прекрассно работает |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 1 Всего: 121 |
Какой в этом смысл? Надо использовать extended формат(10 байт), точность 19 знаков. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| Supersedes |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 29.7.2008 Репутация: нет Всего: нет |
Тогда придется использовать эмуляцию, а в этом случае несложно будет реализовать математически функции с точностью и в 128 бит.
Вот только на ассемблере это уже будет достаточно трудоемко... Это сообщение отредактировал(а) Supersedes - 20.8.2008, 10:17 |
|||
|
||||
![]()
|
| Правила форума "Asm для начинающих" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm для начинающих | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |