Каким будет двоичное значение -17 и как найти дополнение 2 к -17?
Предполагая 8-битное слово, начните с двоичной формы 17. = 00010001
Затем инвертируйте биты: = 11101110
Затем просто добавьте 1: = 11101111.
Если у вас есть 16-, 32- или 64-битное слово, то вы будете загружать больше первых 1.
Даже если вы ничего не предполагаете, вы должны просто сохранить самый левый бит значимым. Начните с самого слова 10001. Затем инвертировать дает один, 01110 Теперь добавьте 1 к этому числу. 01111. Но для того, чтобы сохранить левое, наиболее значимое, добавьте туда один, например, 101111 с точки зрения минимального необходимого количества бит (6 здесь).