Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
3-1087964746
vlgrig1961
2004-06-23 08:25
2004.07.18
Помогите составить запрос на Oracle


9-1073408254
Elf
2004-01-06 19:57
2004.07.18
TImage


3-1087550673
Andrey
2004-06-18 13:24
2004.07.18
Как "упаковать" таблицу?


14-1088255685
Nelud
2004-06-26 17:14
2004.07.18
А что бы такое почитать?


3-1088346697
Дилетант
2004-06-27 18:31
2004.07.18
Paradox + SQL + Date




   Наверх