PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2018/12/15 16:58:00
Name monkeyD
Subject [질문] byte의 범위가 왜 -128까지인지 궁금해요.
자바를 공부 중입니다.
1byte가 -128에서 127까지인데
0111 1111하면 127이니 최대치는 이해를 했습니다.
근데 -128은 왜 그런지 모르겠어요.
2의 보수법으로 음수를 정의(?)하던데 128이 있어야 128의 2의 보수로 -128이 있을 수 있는게 아닌가 하는 생각이 드는데
설명 좀 부탁드릴게요.

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
18/12/15 17:06
수정 아이콘
무지 단순하게 말하면
-1~-128
0~127

로 생각하신다면... (들어가면 다르긴 한데)
츠라빈스카야
18/12/15 17:11
수정 아이콘
찾아보니 1001 0110 이 맨 앞수가 1이니까 그 뒷 수 001 0110(즉 십진수로 22)에서 128을 빼서 -106을 리턴하는 것 같은데요...
그렇다면 1000 0000 일 경우 뒷수 000 0000 (십진수 0)에서 128을 빼면 -128이 리턴되는거 아닐까요?

저도 지금 막 검색해서 쓰는거라 정답이라고 말씀드릴 순 없습니다만..
Lord of Cinder
18/12/15 17:33
수정 아이콘
signed / unsigned로 검색해보시면 빠르지 싶습니다만... 이거같은 경우엔 signed의 범위 때문에 그렇게 될 겁니다.
(signed는 음수, 양수를 다 표현할 수 있고 unsigned는 양수만 표현하는데, signed가 음수, 양수를 다 표현하는 건 한 글자를 떼서 음양 표시를 위해 써먹기 때문이라고 비유할 수 있겠죠.)

2진법으로 표현하면 01111111이 127이 되는데, 첫번째 0은 양수라는 뜻으로 남겨놓은 겁니다.
signed에서 음수를 표시하기 위해서는 첫번째 0이 1이 되면 되는데, 그럼 반대로 이진법으로 10000000은 음수를 나타내게 되고, -128이 되게 됩니다.
18/12/15 17:41
수정 아이콘
1바이트면 경우의수가 256개니까
최대를 127로 잡으면 최소는 -128까지겠죠
지구사랑
18/12/15 17:43
수정 아이콘
진리님의 설명을 조금 더 가필하면...
8 비트로 표현할 수 있는 숫자는 총 256개입니다. 0 ~ 127 까지 양수 128개와 -1 ~ -128 의 음수 128 개죠.
양수와 음수가 대칭일 것을 원한다면 -128 을 사용하지 않을 수는 있습니다만,
-128과 +128 을 모두 사용할 수는 없죠.
볼레로
18/12/15 18:11
수정 아이콘
맨 앞의 1이 부호를 결정하는데 1000 0000하고 0000 0000 둘 다 0이면 비효율적이므로 1000 0000은 -128로 사용하도록 만든 것 입니다.
프로피씨아
18/12/17 08:46
수정 아이콘
이런 질문 자체가 2의 보수법을 이해를 못했다는 의미입니다.
18/12/17 14:07
수정 아이콘
좀 더 구체적인 설명 부탁드려도 될까요?
프로피씨아
18/12/17 14:32
수정 아이콘
(unsigned 8비트 정수형의 십진값) = b7(2^7)+b6(2^6)+b5(2^5)+b4(2^4)+b3(2^3)+b2(2^2)+b1(2^1)+b0(2^0)

(signed 8비트 정수형의 십진값) = -b7(2^7)+b6(2^6)+b5(2^5)+b4(2^4)+b3(2^3)+b2(2^2)+b1(2^1)+b0(2^0)
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
128172 [질문] byte의 범위가 왜 -128까지인지 궁금해요. [9] monkeyD3015 18/12/15 3015
128170 [질문] 초보운전 vs 전운보초 [9] 읍읍6993 18/12/15 6993
128169 [질문] LED방등을 설치 할려고 합니다. [2] 나를찾아서1799 18/12/15 1799
128168 [질문] 32인치 모니터 사려고 하는데 어떤게 나을까요? [6] 롯토2743 18/12/15 2743
128167 [질문] 애플 홈팟을 구매대행했을때 관세문제 입니다. [2] 크리스티아누2174 18/12/15 2174
128166 [질문] 공학계열 종사자분들, 영어책 주력으로 공부하시나요? [19] 삭제됨2823 18/12/15 2823
128164 [질문] 탈모질문 [3] Malice1468 18/12/15 1468
128163 [질문] 효도용 노트북 하나 추천 부탁드립니다. [6] 2678 18/12/15 2678
128162 [질문] 노트북 잘 산걸까요?? [1] whenever1295 18/12/15 1295
128161 [질문] 갤노트가 수첩만큼 유용할까요? [16] 마지막좀비2522 18/12/15 2522
128160 [질문] 댓글에 색을 어떻게 넣는건가요? [5] 마지막좀비1732 18/12/15 1732
128159 [질문] 울버린 관련 질문입니다 (스포 포함) [1] wish buRn1465 18/12/15 1465
128158 [질문] 로스트아크 수중탐사 질문입니다. [4] 키토2783 18/12/15 2783
128157 [질문] 이번 히오스 사태(?)에 대해 질문합니다. [5] Healing3390 18/12/15 3390
128156 [질문] 2080 이슈 아직도 유효한가요? [2] 강미나2598 18/12/15 2598
128155 [질문] 박정현 콘서트 vs 이적 콘서트 [18] 냉면과열무2348 18/12/15 2348
128154 [질문] 피식인분들. 노래 제목 하나만 찾아주세요[노래첨부] [10] 로각좁1583 18/12/15 1583
128153 [질문] 선거제도 (비례대표제) 바꿀때 혹시 비례대표후보 뽑는 기준도 바뀌나요? [10] 1021201 18/12/15 1201
128152 [질문] 구글 계정에 이름을 통째로 어떻게 하나요? [4] 지바고1857 18/12/15 1857
128151 [질문] 제가 부를 만한 락 음악 추천 부탁드립니다. [21] 물맛이좋아요2453 18/12/15 2453
128150 [질문] 크킹2 업데이트 후에 초상화가 깨지는 문제 10년째도피중1652 18/12/15 1652
128149 [삭제예정] 오랜 친구와 인연을 끊었습니다. 많은 충고 바랍니다... [48] rDc667647 18/12/15 7647
128147 [질문] 신토익 900점 받으려면 몇개정도 틀려야하나요? [3] 김철(34세,무좀)8076 18/12/14 8076
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로