Antava
Новичок
Опять Xor (Help)
Всем привет,
возникла проблема с обработкой больших чисел (свыше 32бит),
вот пример котрый уже был на форуме.
----------------------------------------------------------------------------------
вот пример, на выходе $a разные (-346250064 - верно, -2147441448 - нет)
----------------------------------------------------------------------------------
Решил сперва перевести все числа в двоичную форму,
тоесть делю на два и так далее все складываю в массив, затем над каждым битом чисел провожу операцию,
но возникли две проблемы
1. мой результат расходится с правильным результатом.
2. отрицательное число не могу перевести в двоичную форму (перевожу но не правильно) с положительными все ок.
Огромная просьба показать пример или направить в нужное русло с решением этой проблемы.
Нужен обязательно правильный результат на любых системах.
Версии пхп на которых было испробовано 4.4.2 и 5.1.2
Заранне спасибо.
Всем привет,
возникла проблема с обработкой больших чисел (свыше 32бит),
вот пример котрый уже был на форуме.
----------------------------------------------------------------------------------
вот пример, на выходе $a разные (-346250064 - верно, -2147441448 - нет)
PHP:
<?
$a = -4641259416;
$b = 42200;
echo "\n<br>a: ".$a."<br>b: ".$b;
$a^=$b;
echo "\n<br>aa: ".$a;
?>
Решил сперва перевести все числа в двоичную форму,
тоесть делю на два и так далее все складываю в массив, затем над каждым битом чисел провожу операцию,
но возникли две проблемы
1. мой результат расходится с правильным результатом.
2. отрицательное число не могу перевести в двоичную форму (перевожу но не правильно) с положительными все ок.
Огромная просьба показать пример или направить в нужное русло с решением этой проблемы.
Нужен обязательно правильный результат на любых системах.
Версии пхп на которых было испробовано 4.4.2 и 5.1.2
Заранне спасибо.