Здравствуйте, wtom, Вы писали:
A>>причем здесь BCD?
A>>Посмотри libgmp
W>Учитывая, что первая и основная target-платформа проекта Windows, меня в описании libgmp смутила такая фраза: It also is known to work on Windoze in 32-bit mode.
:)
W>не охота проблем, связанных с отсутствием достаточной поддержки "Windoze" )))
W>Но, видимо, придется ее попробовать... Спасибо )
Вообще-то Вам лучше более качественно определиться с задачей. Для бухгалтерии и других финансовых задач принципиально не BCD (хотя с ним удобнее), а точное представление с выбранной точностью — то есть представление с фиксированной точкой. Этого можно достичь десятичным float'ом (где он есть), но лучше всё-таки явно фиксированной точкой — тогда ещё и легко определить переполнение сразу в момент вычисления.
И если не гнаться за BCD, то может хватить и простого враппера вокруг 64-битных целых: отведя 3 цифры на доли копейки, Вы получите 12 цифр на рубли (то есть до триллиона оных), по-моему, практически вполне достаточно:) А если нет — из той же libgmp можно взять подсистему mpz (в целых числах) с произвольной точностью.
Далее, про "Windoze on 32-bit" — тут совершенно нет проблемы в названии:) кроме того факта, что она там неплотно используется (в отличие от Unix, где требуется несколькими стандартными продуктами для криптографии). И отзывов мало. Но попробовать безусловно можно — она сделана хорошо, есть тесты работы, и, думаю, максимумом проблем для 64 бит будет LLP64 в отличие от привычной для Unix LP64. Это лечится достаточно просто.
Ну или напишите сами:) длинная арифметика — задачка уровня курсовой 1-го курса или лабораторной работы 4-го.