Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Бинарный ужас..

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
movEAX
Отправлено: 16 Февраля, 2010 - 21:48:43
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




Как всем известно 168&-2147483649 = 168
Однако интерпретаторы (5.2.12) у хостеров emaxihost.com и xtreemhost.com думают иначе, возвращая 0. Заглянув под бинарный капот, как у себя так и у хостеров узрел:
(свое железо, 5.2.14)
-2147483649 = 11111111111111111111111111111111,
(хостеры)
-2147483649 = 10000000000000000000000000000000

Где собака зарыта?


-----
армия.. самое убогое место
 
 Top
Мелкий Супермодератор
Отправлено: 16 Февраля, 2010 - 22:02:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Может разная разрядность систем? 32 и 64 битки?


-----
PostgreSQL DBA
 
 Top
movEAX
Отправлено: 17 Февраля, 2010 - 07:13:38
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




Ну хорошо, даже если это так, то как обойти препятствие?


-----
армия.. самое убогое место
 
 Top
ZeiZ
Отправлено: 17 Февраля, 2010 - 08:21:31
Post Id



Частый гость


Покинул форум
Сообщений всего: 231
Дата рег-ции: Нояб. 2009  
Откуда: Москва


Помог: 0 раз(а)




проблема с знаком "-" ИМХО

У меня в обычном калькуляторе windows:
2147483649 = 10000000000000000000000000000000
-2147483649 = 11111111111111111111111111111111
 
 Top
movEAX
Отправлено: 17 Февраля, 2010 - 10:04:28
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




ZeiZ пишет:
проблема с знаком "-" ИМХО

Абсолютно верно.. как оказалось записи 168&-2147483649 и 168&2147483649 дают одинаковый результат... Но как изменить это пока не додумался.
(Добавление)
После танцев с бубном и избиения груши пришел к такому умозаключению:
168&(4294967296+(-2147483649)) = 168;


-----
армия.. самое убогое место
 
 Top
JustUserR
Отправлено: 17 Февраля, 2010 - 16:49:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




movEAX пишет:
4294967296+(-2147483649
Только не понятно что мешает сразу написать +2147483648 которое представляется как - и конечно же надо поннить что в типах значения со знаком всегда значений в минусе не единицу больше - то есть возможный интервал значений от -2147483649 до 2147483648 если об этом речь


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
movEAX
Отправлено: 17 Февраля, 2010 - 22:16:13
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




Цитата:
Только не понятно что мешает сразу написать +2147483648

Это переменная на самом деле.


-----
армия.. самое убогое место
 
 Top
JustUserR
Отправлено: 18 Февраля, 2010 - 17:02:55
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




movEAX пишет:
Это переменная на самом деле.
В таком случае просто прибавить еденичук - я имел в виду что для целочисленного типа данных да и вообще для любых численных типов со знаком имеется некая симметрия максимального и минимального значения - но в положительном диапазане на единичку меньше (Потому что старший бит занят под знак )


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB