강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

tmdal0303님의 프로필 이미지
tmdal0303

작성한 질문수

문제로 배우는 C언어

프로그램 구조 및 설정 설명

부호비트 질문드립니다 !

작성

·

232

0

안녕하세요, 강의를 듣던 중 이해가 가지 않아 질문드리겠습니다. 

32비트를 양수,음수의 개수로 표현하는 데 있어서 

양수의 경우 2의31승 - 1개 / 음수 2의 31승 이라고 하셨는데 
제가 이해한 것은,

양수가 2의 31승 - 1인 이유가 31승에서는 양수므로 부호비트 0을 제외하여 2의 31승이 되었는데 -1이 되는 이유가 궁금합니다.
또한, 음수는 음수 부호비트 제외해서 2의 31승까지는 알겠는데 왜 -1을 해주지 않는지 다시 한번 설명해주시면 감사하겠습니다...! 

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

-1를 해주는 이유는 부호비트가 0일때 즉 양수에서는  숫자가 1부터 대응되는 것이 아니라 0부터 대응되기 때문입니다.  

만약 3bit로 8가지의 경우가 만들어 진다면  0부터 7까지 대등되는 것입니다.

반대로 음수는 -1부터 대응되기 때문에 빼주지 않고요.

tmdal0303님의 프로필 이미지
tmdal0303

작성한 질문수

질문하기