본문 바로가기
4장 프로그래밍 언어/C

정수와 부동 소수점 수의 차이(The integer versus the floating-point number)

2021. 4. 15.

정수(The integer)

0 0 0 0 0 1 1 1

정수는 이진수로 변환되어 저장된다. 예를 들어 숫자 7을 8bit로 저장한다면 위와 같다.(23+22+21=7)

부동 소수점 수(The floating-point number)

+ .314159 1

부동 소수점 수는 실수(Real number)를 의미한다. 부동 소수점은 정수와 달리 지수부와 가수부로 나누어 수를 저장한다. 따라서 정수 7과 부동 소수점 7.0은 수학적으로 같은 수이지만 C언어에서는 저장 방법이 다르다. 따라서 float이나 double로 큰 수를 계산하면 오차가 발생한다. 원주율(π)을 float에 저장하면 위와 같다.(+.314159x101=3.14159)

반응형

댓글