부동소수점 질문
글쓴이: byflashh / 작성시간: 화, 2019/08/20 - 6:28오전
제가 부동소수점 부분을 공부하고있는데
의문이 생겨서 질문드립니다.
signed long int 를 보면 32비트로
-2,147,483,648~2,147,483,647까지 범위를 가지는데
음수,양수 부분이 반반 나뉘어있지 않습니까?
근데 float형을보면
지수부의 범위가
2의-126제곱부터 ~ 2의128제곱까지인겁니다.
2의-127제곱은 특정상황이나 오류를 표현할때 쓰는것 까진 알았는데
2의-128제곱을 오류일때 쓰고
2의 -127제곱부터 2의128제곱까지가 범위여야 맞지않습니까?
2의0제곱도 포함해서
아니면 -127~-1 , 0~128으로 도합 256으로 32비트인겁니까?
왜 long int 랑 다르게 float은 음수부분이 더 적게 할당되는거죠??
아니면 제가 아예 개념을 잘못잡고 있는겁니까??
속시원한 답변 부탁드립니다 ㅠㅠ
Forums:
https://en.wikipedia.org/wiki
https://en.wikipedia.org/wiki/IEEE_754-1985
도움되시길. 참고로... 영어네요. :)
세벌 https://sebuls.blogspot.kr/
...
32 bit float의 지수부는 8비트입니다. 그러므로 256가지의 서로 다른 경우를 나타낼 수 있습니다.
지수를 -127에서 128까지 쓰면 256가지 서로 다른 수가 나오는데 그러면 "-128을 오류일 때 쓸" 수가 없지요.
댓글 달기