Добавление двух очень больших чисел, представленных в виде строк в кодировке base64 - PullRequest
1 голос
/ 23 апреля 2011

У меня очень большие числа, и я решил представить их с помощью строк base64 в php.Мне было интересно, знает ли кто-нибудь библиотеку (или встроенную систему) для работы с base64 как числами (иначе говоря, сложение, вычитание, умножение, деление и т. Д.)?

Ответы [ 2 ]

3 голосов
/ 23 апреля 2011

Как правило, не имеет смысла говорить об операциях над числами в той или иной конкретной базе.Вместо этого вы декодируете свои числа в более полезное или обобщенное представление (например, строку десятичных цифр), а затем выполняете работу, перекодируя свой результат для хранения по мере необходимости.

Math_BigInteger библиотека облегчает это.Вам, конечно, все равно придется сначала декодировать данные base64 в базу, используемую классом, т. Е. Двоичную, десятичную или шестнадцатеричную.

2 голосов
/ 23 апреля 2011

Это пример проблемы XY . Проблема в том, что вы хотите добавить числа произвольной точности. Для этого вам следует использовать математический пакет произвольной точности, например BC . Нет смысла представлять их в base64, если для них нет реализации арифметики, которой, насколько вы знаете, нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...