Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Профессиональное программирование


Информационный Канал Subscribe.Ru

В начало Клуб программистов Весельчак У Связаться со мной
a
Здравствуйте.

Хочу написать небольшой коллективный ответ тем, кто писал мне просьбы на почту, но я не ответил, или ответил коротко.

Мне хочется, что бы вы уяснили некоторую позицию мою по поводу сайта и рассылки - это неразрывно связанные вещи.
Пример: присылают мне письмо с просьбой разместить книжки по С/С++.
При этом в день выхода рассылки с анонсом книги по С++, и при условии, что на сайте 8 книг на эту тему не включая стандартов С и С++ в их первоисточнике.

Что мне ответить? Видимо человек не бывал на сайте, или ему просто лень поискать.

Есть просьбы найти какую-то книгу.
Я не ищу книги. Более того, если поиск в интернете не дал результатов, то меня просить видимо так же бесполезно, как и упрашивать Яндекс.
У меня нет книг, и самое главное, я их не сканирую и не создаю.
Книги получаются от вас, многие мне присылают книжки, за что им огромное спасибо.
Кстати сегодня две, именно такие, новые книги.

Просьбы о книгах стоит адресовать не мне, а на наш форум.
Вот в этом месте: http://shelek.com/forum/viewforum.php?f=26 можно создать тему поиска литературы, причем гостям не зарегистрировавшись, тоже можно. В ней просите списки литературы, и, возможно, они у нас появятся.

А так я получаюсь в двойственном положении, с одной стороны помочь хочется, с другой, не могу.

Вот так в вкратце.
А за другие письма с поддержкой, ругательными выражениями и просто идеями, огромное, всем, спасибо. Теперь я чувствую, что наша рассылка выходит не зря, и не зря называется "золотой рассылкой"!

Хочется так же поздравить всех подписчиков с знаменательной цифрой - на стало больше 10 000 человек! Ура!

Оставим отступления и перейдем к делу.

Сегодня добавлено окончание серии статей по внутренним представлениям чисел в программировании.

Автор: Sashok Sam

9. Внутреннее представление целых чисел.

Теперь после рассмотрения недесятичных ситем пора разобраться в том, как же все-таки хранятся данные в компьютере. Да вроде бы ведь уже разобрались, не так ли? Ну, скажем, есть у нас байт. В него можно поместить одно из 256 чисел, и, как мы уже считали (см. задание 2), это числа от 0 до 255, представленные в двоичной системе. Да, конечно, все это верно, но числа-то все только положительные! А в реальных вычислениях, начиная со средней школы мы постоянно пользуемся как положительными, так и отрицательными числами.

Как же быть? Ничего кроме битов в байте нет, никаких специальных приспособлений для указания знака не предусмотрено. Где же выход?

А выход очень прост: давайте пожертвуем одним битом и будем считать его ответственным за знак. Скажем, 0 соответствует положительному числу, 1 - отрицательному. Можно, конечно, и наоборот, разницы никакой, но так уж принято, что обычно 1 обозначает знак минус.

Теперь вопрос: а какой из восьми бит использовать? На самом деле все равно, но проще всего использовать старший бит.

Теперь надо понять, какому отрицательному числу какой двоичный код соответствует. Опять же, решений может быть множество, но самый логичный подход выглядит так: используем такие представления для отрицательных чисел, чтобы (-1) = 0 - 1, (-2) = (-1) -1 и т.д.

Представим себе опять, что байт - это всего лишь счетчик с восемью окошечками. Для значения "0" представление нам известно - это 0 0 0 0 0 0 0 0. Какие цифры получатся в окошках такого счетчика, если вычесть 1?

Вспоминаем правила вычитания в двоичной системе. Как вы помните, при вычитании 1 из 0 в занимается единица из следующего разряда. В нашем случае это произойдет во всех разрядах, пока мы не дойдем до самого старшего. Дальше занимать неоткуда! Что же делать? А ничего! Вот то, что получилось и будет результатом. Так что же у нас получилось? Ну конечно, 1 1 1 1 1 1 1 1. А что получится, если к этому числу добавить 1? Правильно, в соответствии с двоичными правилами сложения во всех разрядах получатся нули, а из старшего разряда получится перенос за пределы счетчика. Этот перенос мы, естественно, тоже проигнорируем.

С подобным поведением вы, конечно, сталкивались в обыденной жизни. В любом счетчике после того, как все разряды заполняются максимальной цифрой (например, 9 9 9 9 9) при прибавлении 1 получаются все нули.

Итак, мы выяснили, что 1 1 1 1 1 1 1 1 соответствует -1.

Полностью прочитать статью можно здесь: .

Для книголюбов две русскоговорящие :) книги сегодня:

Язык 1С - версия 7.7 пояснять ничего думаю не надо. Качать отсюда http://club.shelek.com/download.php?id=136


Элементарное руководство по CRC алгоритмам обнаружения ошибок - очень и очень нужная книжка для кодеров. Брать тут: http://club.shelek.com/download.php?id=135


На сегодня это все.

Удачи.
С уважением, Гром.



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное