ЕГЭ-2020: Уловки о которых не рассказывали на уроке
Как расписать целое отрицательное число в двоичном коде?
Ответ вот на такой загадочный вопрос:
Представление отрицательных целых чисел - дополнительный код. я понял что если в первом разряде стоит 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.