• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

섹션 2.2 정수 형 부분에서 질문있습니다.

23.10.12 19:03 작성 조회수 138

1

섹션 2.2 정수 형에서 질문이 있습니다.

맨 앞에 비트는 부호 비트라서 -1을 해주는 것까지는 이해하겠는데 0을 표현하기 때문에 하나를 빼줘야 하는 게 이해가 안 가요.

영상에서 8분 32초 부분입니다.

답변 1

답변을 작성해보세요.

1

Soobak님의 프로필

Soobak

2023.10.13

안녕하세요, 답변 도우미 Soobak 입니다.

 

우선, 해당 강의에서 초점을 맞추시면 좋겠다고 생각되는 부분은 '자료형이 표현할 수 있는 숫자의 범위를 넘어가면 문제가 생길 수 있다' 라는 부분입니다.
현재 질문해주신 수식이 잘 이해가 되지 않으시더라도, 말씀드린 부분에 초점을 맞추어서 꾸준히 학습하시다 보면, 추후 이해가 되지 않으셨던 부분들도 보다 쉽게 이해되실 것이라 생각합니다.
지금 당장 모든 것을 이해하려 하지 않으셔도 괜찮다는 말씀을 드리고 싶습니다.
어려움에 막혀 포기하지 말고, 조금은 마음 편하게 꾸준하게 학습할 수 있도록 마음 가짐을 갖는 것이 더 중요하다고 생각합니다.

 

답변을 드리자면 다음과 같습니다.

 

질문주신 내용에서 초점을 맞추어야 할 것은 '표현할 수 있는 가장 큰 숫자' 와 '가짓수(경우의 수)' 를 구분하는 것입니다.
즉, 'signed short 자료형이 표현할 수 있는 가장 큰 숫자' 를 확인하기 위해서, '가짓수(경우의 수)' 의 계산을 통하는 것임에 초점을 맞춰보시면 보다 이해가 수월하실 것 같습니다.


signed short 자료형은 총 16 비트로 구성되어 있습니다.
이 중 최상위 비트 1 개는 부호를 표현하는 데에 사용되므로, 비트 1 개를 제외하고 2^15 개의 숫자를 표현할 수 있습니다.
해당 값은 32,768 입니다

이 때, 확인하고자 하는 것은 'signed short 자료형이 표현할 수 있는 가장 큰 숫자' 임으로, 0 을 표현하기 위해 사용된 0000 0000 0000 0000 에 대한 경우의 수 1 을 빼주어 '표현할 수 있는 최대 숫자' 32,767 을 확인하는 것입니다.