강의

멘토링

커뮤니티

Inflearn Community Q&A

ehdakvv8959's profile image
ehdakvv8959

asked

Following and Learning C++ with Hong Jeong-mo

3.7 Binary Numbers

실제로 저장 될때는 다르게 저장이 되는거죠?

Written on

·

339

1

강의에서는 가독성 때문에 0000_0101이렇게 설명을 해주셨는데

예를들어 int i =5; 라는 값이 저장이 될때는 4바이트니까

32비트를 사용하기에

0000_0000_0000_0000_0000_0000_0000_0101

이렇게 되는게 맞나요?

그리고 만약 -5라면 2의 보수 취해주고 1을 더해준값

1111_1111_1111_1111_1111_1111_1111_1011

제가 생각한게 맞을까요???

 

 

c++

Answer 1

2

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

 

해당 강의의 26:40 부분 경에 대한 질문이시군요!

옳게 이해하고 계십니다.

int i = 5;32 비트 시스템에서 저장할 때, 해당 값은 32 비트의 공간을 사용하여 저장됩니다.
이 경우에는 0000 0000 0000 0000 0000 0000 0000 0101 로 표현됩니다.
앞의 28 비트는 모두 0 으로 채워져 있습니다.

 

음수에 대해서도 올바르게 이해하고 계십니다.
예를 들어, -5 의 경우, 먼저 5 의 이진 표현 0000 0000 0000 0000 0000 0000 0000 0101 을 반전시킨 다음, 1111 1111 1111 1111 1111 1111 1111 1010 여기에 1 을 더하여 최종적으로 1111 1111 1111 1111 1111 1111 1111 1011 이 됩니다.

ehdakvv8959님의 프로필 이미지
ehdakvv8959
Questioner

예아 감사합니다 좋은하루되세요~ㅎ

ehdakvv8959's profile image
ehdakvv8959

asked

Ask a question