underW
Newbie-
Posts
24 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Store
Everything posted by underW
-
ну вообще то я согласен, если смотреть со стороны РНР - то это мой чистейший провал, согласен Если смотреть со стороны фундаментального программирования, без привязки к конкретному языку - то все нормально Veseloff, Вы абсолютно правы, все опирается в два варианта записи нуля. На самом деле имеем такую картину: есть у нас 1 байт - 8 бит, в этот объем мы можем запихнуть одно из 256 значений с диапазона [0-255] и это для безнаковых чисел. Для знаковых чисел мы определяем старший бит как знаковый и само число записываем в оставшиеся 7 бит, так как есть только 7 бит, значит к-во значений, которые мы можем записать ровно в 2 раза меньше от кого количества, когда мы работаем с 8 битами: 256/2=128; само число будет принадлежать диапазону [0-127]. При переходе к отрицательным числам, первое отрицательное число, на которое мы попадаем будет 1|000 0000 - то есть это (-0). Понятие отрицательного нуля (-0) так же как и положительного нуля (+0) существует в математике, но это все скорее некие абстракции и они нам не нужны smile Поэтому в ДК отрицательный ноль выбрасывается и даже не рассматривается, вместо него просто вводиться еще одно дополнительное число (-128). Вот как оно туда помещается и на выходе переменная типа byte вмещает в себя значение от (-128) до (127). Все, вопрос решен.
-
Если посмотреть любой язык программирования, в том числе и на PHP, то в нем переменная типа byte может содержать значение из диапазона от (-128) до (127) включительно. Суть вопроса заключается в том, что как в 1байт (8 бит) впихивается число (-128)??? Если рассматривать прямой код, то в нем при 8 битах старший бит является знаковым, а остальные 7 бит отводятся для записи самого числа, при таком раскладе, максимальным положительным числом будет - 0|1111111 (127), максимальным отрицательным числом будет - 1|1111111 (-127). Становиться вполне очевидным, что при использовании прямого кода для записи чисел со знаком в 1байт можно поместить значение из диапазона (-127) до (127). Но, Архитектура х86 для записи отрицательных чисел использует так называемый дополнительный код (ДК). Получается, что при использовании именно ДК, мы можем работать с диапазоном от (-128) до (127). Самый популярный пример алгоритма перевода в ДК, который мне удалось нагуглить, заключаеться в следующем: Для перевода десятичного числа со знаком в двоичное необходимо сначала записать его в двоичном виде. Если число отрицательное, то нужно получить обратный код (1 заменить на 0 и наоборот) и прибавить единицу к полученному результату. или другими словами, более лаконично: 1. записать прямой код модуля числа; 2. инвертировать его (заменить единицы нулями, нули — единицами); 3. прибавить к инверсному коду единицу. Пример: двоичный код +11 инверсия +1 -11 ————> 0000 1011 —-> 1111 0100 —> 1111 0101 В приведенном примере дополнительным кодом числа 1011 является 11110101. Знаковый бит 1 означает, что рассматриваемое число отрицательно. Исходя из такого алгоритма, вообще становиться не понятным откуда берется ограничение на (-128): в 1 пункте сразу же сказано - записать прямой код модуля числа - в 1 байт влезет не то что модуль (-128) но и модуль (-255). Но если учесть ту особенность ДК при записи отрицательного числа, что знаковый бит всегда равен 1 и немного поэкспериментировав с ним, становится видно, что только при работе с отрицательными числами до (-128) включительно, знаковый бит равен 1, если ити дальше (-129), (-130) - то знаковый бит получаем 0, то есть мы наталкиваемся на ошибку. Неужели этим и объясняется диапазон от (-128) до (127)? А теперь гляну на еще один алгоритм определения ДК: то есть алгоритм остается тот же самый, только пример другой: Для числа -1101(-13): Прямой код 1|0001101 Обратный код 1|1110010 Дополнительный код 1|1110011 Судя из этого примера, ДК формируется на основе обратного кода, тот в свою очередь формируется на прямом коде. Посмотрим, как у нас записан прямой код: 1|0001101 - видим, что старший бит отведен для записи знака, остальные 7 - для записи самого числа, значит мы снова наталкиваемся на диапазон от (-127) до (127) и опять не можем вместить (-128). Вот собственно вопрос остается открытым, как же влазит (-128) и 1 байт?
-
вопрос решен. Great Rash, спасибо.
-
ну я вот тоже думал о такой реализации, а потом решил, что должно быть по идее и более элегантное решение сейчас пойду попробую хоть это
-
в пределах <fieldset> есть набор однотипных div все они расположены в столбик один под одним, кроме одного - который расположен справа- точнее в верхнем правом углу, это за счет установки свойства float:right; все чудненько, а теперь вот необходимо под этим дивом установить еще один такой же, как я не мудровал с float, clear, ничего не получилось, они размещаются друг возле друга, а не один над другим, подскажите, пожалуйста, как сделать правильно.
-
Dimitry Wolotko, что б поржать?
-
да тут же суть в том, что нужно как можно быстрее, но и не в ущерб качеству... как то сейчас больше склоняюсь к варианту не спать всю ночь, эх!
-
Стоит задача реализации каталога цветочного магазина. В каталоге должно содержаться описание растений упорядоченных по категориям(семейство кактусы, семейство семи цветиков). Минимальный функционал: просто отображение растений, +админка с возможностью редактирования описаний и фоток. Каталог должен быть готов на вчера. Теперь сам вопрос: может стоит просто поискать готовый простенький скрипт каталога? (поделитесь ссылкой) Или может получиться и самому за ночь какое то подобие написать?
-
ребят, спасибо, разобрался
-
LokiDi L0ck, уже неоднократно натыкаюсь на пример с рисованием фигур. Откуда он взят, какой первоисточник? Int, ооооо, вот, вот, вот, что то в этом плане я и хотел услышать
-
Сейчас вот стал более глубоко вникать в ООП в PHP, так вот: Абстрактные классы и методы Абстрактные методы имеют только объявление и не имеют реализации. Класс, который содержит такие методы, должен быть обязательно объявлен как абстрактный: <? abstract class MyClass { abstract public function fn(); } ?> Это все понятно, как объявлять и что это такое, НО ну никак не могу понять, зачеееем они надо???? Вот нашел такую цитату: А зачем тогда нужны абстрактные методы и классы? А чтобы описать объект, который будет реализован, но который еще не реализован. Зачем описывать объект, который будет реализован, но еще не реализован? В чем суть абстрактного класса??? Можно объяснить на пальцах? Спасибо.
-
тоесть? не,не оно же начальство какое же тут сам
-
меня все устраивает, НО, есть человек, который дал мне задание, и который утверждает, что все-все чаты работают без автообновления, и что это вообще прошлый век... поэтому, мне надо или сделать как мне сказали, или же привести жесткие аргументы, что все делается так и так, а не наоборот.
-
я вот тоже так думаю, это же мини-чат, ну максимум 50 сообщений будет, минимум пользователей, та хоть каждые пол секунды ставить можно, висеть, грузить, тупить ничего же не будет, но вот как же быть с условием без автообновления?
-
мне поставили такую задачу: реализовать чат, но никаких автообновлений быть не должно, то есть, не должно быть такого, что через 5, 10, 30 сек. мы лезем и смотрим, что там с новыми сообщениями, как только появляется новое сообщение, оно само должно вылезть в окошке, хмм, но так же нельзя ну никааааак, да/не?
-
передо мной стоит задание создания мини чата, сначала решил погуглить готовые решения, нашел Cbox, вроде как можно было бы и использовать его, но автообновление там можно установить только в платной версии, плюс еще есть ряд ограничений. Поэтому, вероятней всего, придется что то "мудровать" самому, но заковыка в том, что нету даже малейшего представления о том, как вообще организован чат, например, как реализовать вывод пользователю нового сообщения в чате, не путем ожидания автообновления через заданный интервал, а сразу как сообщение было написано я даже теоретически не представляю, объясните, пожалуйста.
-
Павел Билькис, dyadya, спасибо, то что надо
-
так а как же его очистить то?
-
не, так тоже не срабатывает. Тоесть как, жмем са ссылку - случайное число остаеться тоже самое, а если жмем f5 - то число меняеться, следовательно, при нажатии на ссылку, опера страницу вообще не обновляет. сейчас вот покопался в настройках оперы и нашел интересность в разделе: Настройки-Дополнительно- История, тут есть такой пункт, как Проверять, обновлена ли страница на сервере, каждые 5 минут. Если же сменить с 5 минут на на значение Всегда то кликаем на ссылку - и новое значение, значит страничка обновляеться.
-
Имя скрипта: test.php код PHP <?php echo rand(); ?> <a href="./test.php"><img src="img.ico"></a> Как видим на странице выводиться случайное число и ссылка-картинка, причем ссылка идет на эту же самую страничку. В Ослике, Лисичке, кликаем на ссылку, страничка обновляеться, и выводиться всегда разное случайное число, ччто есть вполне логичным. В опере же кликал-кликал на ссылку, страничка по ходу вообще не обновляеться, случайное число одно и тоже, в чем можент быть проблема?
-
получилось!!!! Justnewone, спасибо!!!
-
таки да, float:left помогло решить проблему, Searcher, спасибо!
-
<html> <head> <style> .dl {float:left; width: 50px; height: 50px;} </style> </head> <body> <div style="width:300px"> <div id="q1" style="background-color: blue; width: 300px; min-height: 100px;"> <div id="q2" style="background-color: blue; width: 300px; min-height: 100px;"> <div class="dl" style="background-color: green;">q2</div> <div class="dl" style="background-color: yellow;">q3</div> <div class="dl" style=" background-color: red;">q4</div> </div> </div> <div style="clear:left; border-style: none solid solid; border-color: rgb(204, 204, 204); border-width: 0pt 1px 1px; width: 300px;"> <div style="margin: 4px; clear:left; overflow: hidden; width: 300px; min-height: 49px;"> Some Content was in this area </div> </div> </div> </body> </html> вот с этим куском кода пробую разобраться. Дело в том, что блоки q1 и q2 содержат в себе целое семейство других блоков, количество которых на странице динамически изменяеться, так вот при большом количестве внутренних блоков, они все не помещаються в родительской зоне и начинаю вылазить из нее, так вот, как сделать, что бы размеры родительського div изменялись в зависимости от размеров его содержания?
-
на странице есть элемент textarea. Дальше с помощью JS помещаю textarea в динамически созданный div, тоесть получаем div внутри которого впихнута textarea. Но ширина div занимает всю страничку, а как сделать так, что бы ширина div была такой же как и ширина самой textarea, что бы получалось, что div округает ее четко по периметру?