Естественные науки

Кто знает, как перевести число из десятичной системы в минус-двоичную? Подскажите, плз

Примерно также, как в любую другую систему счисления. А именно, делить число на основание, всякий раз записывая остатки от деления, а затем выписать все остатки от деления справа налево, начиная с частного.
Особенностью такого перевода является то, что все цифры числа в минус-двоичной системе счисления положительны и принимают значения либо 0, либо 1, поэтому все остатки от деления и частное также должны быть положительны.
Пример. Под моим домом ходит 194-й автобус. Попробуем перевести число 194 в минус-двоичную систему счисления.
Делим 194 на (-2), получаем в частном (-97) и в остатке 0.
Делим (-97) на (-2), получаем в частном 49 и в остатке 1. Обратим внимание, что нельзя записать так, что в частном будет 48 и в остатке (-1): остаток не может быть отрицательным .
Продолжаем деление:
Делим 49 на (-2), получаем в частном (-24) и в остатке 1.
Делим (-24) на (-2), получаем в частном 12 и в остатке 0.
Делим 12 на (-2), получаем в частном (-6) и в остатке 0.
Делим (-6) на (-2), получаем в частном 3 и в остатке 0.
Делим 3 на (-2), получаем в частном (-1) и в остатке 1.
И наконец, делим (-1) на (-2), получаем в частном 1 и в остатке 1.
Выписываем частное и все остатки от деления справа налево:
111000110
Это и есть представление числа 194 в минус-двоичной системе счисления.
Можно проверить себя, произведя обратный перевод. Для этого надо разложить число в минус-двоичной системе по степеням основания минус двойки.
Всего в записи числа 9 цифр. Значит отсчёт начинаем с (-2)^8 = 256:
1*(-2)^8 + 1*(-2)^7 + 1*(-2)^6 + 0*(-2)^5 + 0*(-2)^4 + 0*(-2)^3 + 1*(-2)^2 + 1*(-2)^1 + 0*(-2)^0 =
= 1*256 + 1*(-128) + 1*64 + 0*(-32) + 0*16 + 0*(-8) + 1*4 + 1*(-2) + 0*1 =
= 256 - 128 + 64 + 4 -2 = 194
Так и есть.
Значит 194 в десятичной системе счисления - это 111000110 в минус двоичной!
Николай Кристина Колесниковы
Николай Кристина Колесниковы
51 249
Лучший ответ
Viktor Rudyk А есть ли такие системы? Или это выдумка?
Очевидно, что цифры в такой системе будут -1 и 0 (в отличие от двоичной, в которой это 1 и 0). И перевод делается ровно так же, как перевод в "плюс-двоичную" систему: делим число на -2 и смотрим на остаток. Если он равен -1, то пишем в очередной разряд 1, а если 0 - то пишем туда 0. Если же остаток равен +1, но его неверно сосчитали :)
Первый раз в жизни слышу про "минус-двоичную" систему счисления )))