Рассмотрим следующую программу
void main(){
char t = 179;
printf("%d ",t);
}
Выход -77. Но двоичное представление 179
10110011
Таким образом, не должно быть -51, учитывая, что 1-й бит - это бит. Двоичное представление -77 есть
11001101
Кажется, что битовый порядок обратный. В чем дело? Пожалуйста, кто-нибудь посоветует.
10110011
является представлением -51. Конечно, на самом деле10110011
равно -77 в представлении дополнения до двух, которое сегодня является стандартным представлением отрицательных чисел. - person eigenchris   schedule 15.04.2015