Главная страница
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.045 c
14-1088270241
Nelud
2004-06-26 21:17
2004.07.18
Собеседование.


4-1086254243
Вася
2004-06-03 13:17
2004.07.18
Как определить наличие принтера в системе


14-1088438775
TUser
2004-06-28 20:06
2004.07.18
Я один попался на такой развод?


3-1087909976
Rater
2004-06-22 17:12
2004.07.18
Помогите с XML!!! Плиззз!


3-1087742426
Michail Dalakov
2004-06-20 18:40
2004.07.18
trigger s в oracle