흔히 컴퓨터는 덧셈만 해서
나누기 곱하기 빼기를 구현하잖아요?
근데 int로 v1 = 1;
v2 = ~v1;
하고 바이너리 와 십진수로 출력하면
v1은 00000000 00000000 00000000 00001010 십진수로 10
v2는 11111111 11111111 11111111 11110101 십진수 -11 이
됩니다
학교다닐때 1의 보수 2의보수로 대강 외워서 한지라
남 가르칠때 학생하나가 질문하네요
v2 바이너리가 어찌 -11이 되냐고요;;;
갑자기 턱 막혔습니다
11111111 11111111 11111111 11110101 2진수를 10진수 계산하면
저값 안나오는거 맞거든요
11111111 11111111 11111111 이건 어찌 처리 될까요??
아시는분 계시면 조언부탁드립니다