부동소수점 (IEEE 754)

강준영·2025년 4월 10일
1

숙제

목록 보기
1/4
post-thumbnail

부동소수점이란?

부동소수점(floating point) 또는 떠돌이 소수점 방식은 실수를 컴퓨터상에서 근사하여 표현할 때 소수점의 위치를 고정하지 않고 그 위치를 나타내는 수를 따로 적는 것으로, 유효숫자를 나타내는 가수와 소수점의 위치를 풀이하는 지수로 나누어 표현한다.

수학에서는 1.23 × 10^4, -3.14 × 10^-2 이런 식으로 사용된다.

한마디로 실수를 표현하는 아이디어, 개념이다.


IEE 754란?

위의 부동소수점 개념을 컴퓨터에서 구현하기 위해 만든 "국제 표준"이다.

  • 어떤 방식으로 비트(bit)를 나눌지, 어떻게 계산할지, 반올림은 어떻게 할지 등을 규정하는 것이다.

IEEE 754는 부동소수점 방식 중 하나이며, 오늘날 가장 널리 쓰이는 방식이다.

컴퓨터에서 부동소수점의 방식

컴퓨터는 이진수를 사용하기 때문에 다음과 같이 세 부분의 값으로 실수를 나타냄.

부동소수점은 32비트로 구성되어 있으며, 부호 부분, 지수 부분, 가수 부분으로 나뉘어있다.

부호(S) 1비트 양수/음수 표시

지수(E) 8비트 소수점 위치 조절

가수(M) 23비트 숫자 자체의 소수값

예시
−118.625 (십진법)을 IEEE 754 (32비트 단정밀도)로 표현해 보자.

  • 음수이므로, 부호부는 1이 된다.
  • 그 다음, 절댓값을 이진법으로 나타내면 1110110.101이 된다. (이진기수법을 참조)
  • 소수점을 왼쪽으로 이동시켜, 왼쪽에는 1만 남게 만든다. 예를 들면 - 1110110.101=1.110110101×2⁶ 과 같다. 이것을 정규화된 부동소수점 수라고 한다.
  • 가수부는 소수점의 오른쪽 부분으로, 부족한 비트 수 부분만큼 0으로 채워 23비트로 만든다. - 결과는 11011010100000000000000이 된다.
  • 지수는 6이므로, Bias를 더해야 한다. 32비트 IEEE 754 형식에서는 Bias는 127이므로 - 6+127 = 133이 된다. 이진법으로 변환하면 10000101이 된다.
  • 이 결과를 정리해서 표시하면 다음과 같다.

이렇게 저장된다~

profile
훈수 해주세요.

0개의 댓글