Материал предоставлен http://it.rfet.ru

Кодирование целых чисел

Кодирование целых чисел

8 лет назад

Здравствуйте!

Мне непонятен параграф “Кодирование числовой информации”. Я не понял, как кодировать отрицательные, да и положительные, числа. Из прошлого изучения информатики я знаю о системах счиления, как переводить из одной с/с в другую и т п. А из этого параграфа я ничего не мог понять. Например, почему “число -1 в 8-разрядном двоичном коде выглядит, как 11111111, а -2 — 11111110”?

Можете ли Вы как-нибудь объяснить мне этот материал попонятнее?

С уважением, Андрей Шутелев.

8 лет назад

Здравствуйте, Андрей.

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

В дополнительном коде ноль в старшем разряде соответствует положительным числам, а единица - отрицательным числам, но при этом положительные числа представляются как обычно, а отрицательные - в виде записи дополнительного кода. Давайте рассмотрим пример, порядок перевода числа -9 из десятичной системы в дополнительный код:

  1. запишем число без знака: 9;
  2. преобразуем число в двоичный код: 00001001;
  3. получим обратный код: 11110110;
  4. прибавим 00000001 и получим: 11110111.

Аналогично, -1: - 00000001 => 11111110 +00000001 = 11111111.

С уважением, Елена.

Ваш комментарий

Комментирование доступно только для авторизованных пользователей.