ММ
Михаил Медведев

Какой алгоритм перевода из доп кода в обратный и далее в прямой? Для двоичных чисел 8 бит



что-то не могу посчитать:
Есть два числа
X=-100011 и Y=10011
Для Х:
Прямой: 1|0100011
Обратный: 1|1011100
И доп код: 1|1011101

Для Y:
Прямой, обратный и доп код:
0|0010011

В итоге складываю в обратных кода:
1|1011100 + 0|0010011 = 1|1101111
И в доп кодах:
1|1011101 + 0|0010011= 1|1110000

И начинаю переводить по тому же алгоритму (только в обратном порядке) для проверки и в итоге проверка получается вообще не понятная. Результат разности полученной суммы и одного из чисел в прямых кодах не совпадает с известным вторым числом. Как проверить то?

СХ
Саша Хныкин

если число положительное то все так и оставлешь, если отрицательное то из дополнительного отнимаешь единицу => обратный код и инвертируешь все биты кроме бита знака => прямой код

==========

И что не нравится?
-100011=-35, 10011=19
10011-100011=-10000=-16

1|1101111(ОК) = 1|0010000(ПК) = -16
1|1110000(ДК) = 1|1101111(ОК) = 1|0010000(ПК) = -16
Все сходится

Похожие вопросы
как расшифровать двоичный код 011001 ??
помогите в С++ с кодами. Как в С++ реализовать перевод из кода с числом единиц, кратным трем в обычный двоичный код?
Перевод Десятичного кода в Двоичный
Составить алгоритм перевода заданного натурального числа в двоичную систему.
Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему и обратно
существует ли компаратор для чисел в дополнительном двоичном коде?
Есть схема, кот. работает с двоичным кодом. будет ли она работать с доп. двоичным кодом и выдавать результат в жоп. коде?
Напишите правило перехода десятичных чисел в двоичный код.
Сумма двоичных чисел 11,1011 и 111,001 равна двоичному числу??
Запишите подробный алгоритм перевода чисел А=4276 и В=42,76 в двоичную, восьмеричную и шестнадцатеричную форму