БлогNot. Как расписать целое отрицательное число в двоичном коде?

Помощь дата->рейтинг Поиск Почта RSS канал Статистика nickolay.info Домой

Как расписать целое отрицательное число в двоичном коде?

Ответ вот на такой загадочный вопрос:

Представление отрицательных целых чисел - дополнительный код. я понял что если в первом разряде стоит 0 то число положительное а если 1 то отрицательное... а как посчитать?

Не понял, что конкретно ты хотел сделать?

Узнать, как двоичное представление отрицательного числа расписать, что ли?

Например, так.

Имеем десятичное число -2013, надо его записать в двоичном коде.

Переводим положительное число 2013 в двоичную систему, получаем 11111011101.

Дописываем слева нули, чтоб вышло 16 разрядов (если число двухбайтовое), имеем 0000011111011101 (прямой код).

Инвертируем все биты (то есть, 0 заменяем на 1, а 1 на 0), имеем 1111100000100010 (обратный код).

Прибавляем в двоичной системе 1 к обратному коду, имеем 1111100000100011. Это значение равно -2013.

Проверить можно стандартным калькулятором Windows:

запускаешь кальулятор (Программы - Стандартные - Калькулятор), в XP выбираешь в меню программы Вид - Инженерный, в "семерке", по-моему, Вид - Программист, набираешь выражение, ответом для которого будет нужное отрицательное число, например, 0-2013 = -2013, переключаешь систему счисления на двоичную (Bin), а ёмкость числа - на 2 байта, видишь 1111100000100011.

Или у нас сразу есть отрицательное двоичное число, скажем, 1111111111101111 (самый левый бит - единица, значит, отрицательное)... левая "1" обозначает знак "-", отбрасываем её, а от оставшегося двоичного числа отнимаем 1, получаем 111111111101110, заменяем все нули на 1, а единицы на нули, получаем 000000000010001, а это есть десятичное 17. Значит, код обозначал -17.


теги: email числа

19.01.2013, 10:53; рейтинг: 32847

  свежие записипоиск по блогукомментариистатистика

Наверх Яндекс.Метрика
© PerS
вход