Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.18;
Скачать: CL | DM;

Вниз

Вопрос по РНР. Может кто-нибудь помочь?   Найти похожие ветки 

 
Samael6 ©   (2004-06-25 17:15) [0]

Товарищи, пишу программу на РНР и возникла проблема, в вычислениях с побитовыми операциями получаю результат отличный от того, который хотелось бы. Программу пишу не с нуля, а переписываю ее с Перла(есть также реализация на Дельфи). Вот в чем собственно проблема, есть такая строка:

$s=((($s-$k)-$l)+$SomeData1) xor ($l >> 0x0D);

Здесь переменные имеют следущие значения:

$s = 1868983913
$k = 313254387
$SomeData1 = 2654435769
$l = 358929616

В результате после выполнения этого действия в переменную $s записывается значение 3851235679(исполняется под Винд2000). В то время как реализация этого же куска программы в Перле(ФриБСД) и в Дельфи6 дает: 3851262585. При этом и левая скобка, и правая вычисляются правильно, а вот после операции побитового логического отрицания все портится. В чем может быть проблема? Таких мест в программе несколько и после такого "збоя" программа работает уже не так как нужно.
А есхи вместо ХОR поставить ^, то ответ: -443704711. Это тоже "не правильно".

Если все плохо, то может быть есть идеи как можно это обойти?

Как не трудно было заметить, блок с хором не выполняется вообще! Почему? Что ему мешает? Народ, хееелппп!!!


 
VictorT ©   (2004-06-25 17:30) [1]

Не вникал, но... попробуй явно задавать типы переменных


 
Samael6 ©   (2004-06-25 19:17) [2]

Там кроме интегера них нет



Страницы: 1 вся ветка

Текущий архив: 2004.07.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
4-1085999749
GuAV
2004-05-31 14:35
2004.07.18
Вставить в dialogtemplate форму.


1-1088748871
Роман
2004-07-02 10:14
2004.07.18
Исключения


4-1085686327
Dmitriy Volkov
2004-05-27 23:32
2004.07.18
автозагрузка у юзера с ограниченными правами


1-1088849976
serg128
2004-07-03 14:19
2004.07.18
Как получить идентификатор (дескриптор) активного приложения?


8-1083567552
gagarin
2004-05-03 10:59
2004.07.18
Цвет в 32-битном режиме