Я использую дополнение 2 'для представления отрицательного числа в двоичной форме
Случай 1 : число -5
В соответствии с методом дополнения до 2 ':
Преобразуйте 5 в двоичную форму:
00000101
, затем переверните биты
11111010
, затем добавьте 1
00000001
=> результат: 11111011
Чтобы убедиться, что это правильно, я повторно вычисляю до десятичного:
-128 + 64 + 32 + 16 + 8 + 2 + 1 = -5
Случай 2 : число -240
Предпринимаются те же шаги:
11110000
00001111
00000001
00010000 => recalculate this I got 16, not -240
Я что-то не понимаю?