2010-03-25 5 views
3

Кто-нибудь знает класс/библиотеку/etc. который может имитировать 32-разрядные целые числа без знака на 32-битной платформе в PHP? Я портирую C lib в PHP и использует много целых чисел, которые больше, чем максимальные для 32-битного подписанного int.32 бит unsigned int php

ответ

2

Попробуйте BC Math Library, который «поддерживает номера любого размера и точности, представленные в виде строк».

Удачи вам!

+0

Я попробовал это, и это прекрасно работает для некоторых операций. Думаю, мне придется писать свои собственные функции для некоторых побитовых операций и pack/unpack. –

0

Почему вы не можете писать

modulo(a+b,2^32) 

или его эквивалент для PHP а, б быть «без знака» целых чисел вы пытаетесь «целое число без знака добавить», аналогично для вычитания, умножения, деления, .. .? Конечно, вы можете скрыть это в функции add_unsigned, чтобы сделать код более понятным.