안녕하세요.
다음의 코드 결과가 생각하던 것과 달라 당황하고 있습니다 ㅜ.ㅜ
#include <stdio.h>
int main(void)
{
char a = 7,b=-7,aa,bb;
char d = 7, dd;
dd = ~d;
aa = a>>1;
bb = b>>1;
printf("%d %d %d", aa, bb, dd);
return 0;
}
결과는 3 -4 -8 이 나옵니다.
양수야 그렇다고 쳐도 음수의 경우 정확하게 메모리에는 2의 보수
로 표현되는 줄 알았는데 not 의 경우는 어떻게 되는 것입니까?