Побитовые и беззнаковые операции int в PHP - PullRequest
3 голосов
/ 18 января 2011

Я пытаюсь преобразовать свой код C ++ в PHP, и я застрял, мои исходные коды используют целые числа без знака (32-битные) и многие побитовые операции, такие как вращения, xor, сдвиг, я стараюсь, чтобы это работалоЯ вырезаю целые числа до 32 бит

$ i = $ i & 0xFFFFFFFF;

, но все же у меня много проблем (думаю, это связано с умножением / делением) на этот раз.

Существуют ли какие-либо библиотеки для PHP, которые обрабатывают операции с 32-разрядными целыми числами без знака, также приветствуются любые другие идеи :) Спасибо:)

Ответы [ 3 ]

1 голос
/ 03 июля 2012

Пожалуйста, посмотрите, как Java-программисты обрабатывают неподписанные целые числа

http://www.javamex.com/java_equivalents/unsigned.shtml

Полагаю, это единственный способ сделать это ...

0 голосов
/ 22 февраля 2011

У меня были похожие проблемы несколько лет назад. Оказалось, что проблема была в оперативной системе, которая была 32-битной. Переход на 64-битную ОС решил для меня проблемы.

0 голосов
/ 18 января 2011

Все целые числа в PHP подписаны.

Однако здесь есть ответы на побитовые операции: http://php.net/manual/en/language.operators.bitwise.php

...