Библиотека арифметики множественной точности GNU
-
Обзор GNU Multiple Precision Arithmetic Library (GMP)
- GMP — бесплатная библиотека для арифметики произвольной точности.
- Поддерживает целые числа, рациональные числа и числа с плавающей запятой.
- Ограничения по точности связаны с доступной памятью.
- Имеет богатый функционал с обычным интерфейсом.
-
Поддержка и распространение
- Интерфейс ориентирован на C, но есть оболочки для других языков.
- Kaffe и GNU Classpath использовали GMP до 2008 и 2009 годов соответственно.
- Основные приложения: криптография, научные исследования, интернет-безопасность, системы компьютерной алгебры.
-
Производительность и оптимизация
- Стремится быть быстрее других библиотек bignum.
- Использует разные алгоритмы для разных размеров операндов.
- Оптимизированные сборки для разных процессоров.
-
История и развитие
- Первый выпуск в 1991 году, постоянное развитие и поддержка.
- Часть проекта GNU, распространяется под лицензией LGPL.
-
Применение в других проектах
- Используется в системах компьютерной алгебры и библиотеке CGAL.
- Необходим для создания компиляторов GCC.
-
Примеры кода
- Пример на C для умножения и печати больших чисел.
- Эквивалентный пример на C++ с использованием флагов компилятора.
-
Языковые привязки
- Список языковых привязок GMP.
-
Рекомендации и внешние ссылки
- Ссылки на внешние ресурсы, включая официальный веб-сайт.
Полный текст статьи: