-128 и 128 в 2-х дополнят
В дополнении 2 0-127 представляется как 00000000 - 01111111. В случае отрицательных чисел мы инвертируем все биты в представлении без знака и добавляем 1, чтобы получить дополнение 2.
(Ссылка:http://en.wikipedia.org/wiki/Signed_number_representations#Two.27s_complement)
так что -1 в дополнении 2 будет:
unsigned 1 = 00000001 invert all bits = 11111110 add 1 = 11111111
Но для -128, если мы будем следовать тем же шагам:
unsigned 128 = 10000000 invert all bits= 01111111 add 1= 10000000
так -128 и 128 имеют одинаковое представление в 2-х обозначениях дополнения? Почему диапазон от 2 до 8 битов не равен от -127 до 128? Короче говоря, почему -128 предпочтительнее, чем представление беззнаковых 128 с использованием того же количества битов?