부동 소수점 표현

컴퓨터에서는 실수를 표현하는 방법이 2가지가 있다.

  • 고정 소수점 표현
  • 부동 소수점 표현

고정 소수점 표현

이진수로 표현된 실수를 소수점의 위치를 고정하여 저장하는 방식 연산 속도가 빠르다는 장점이 있지만, 정수 부분과 소수 부분의 비트 수가 고정되어 있어 큰 수나 정밀한 소수를 표현하는 데 한계가 있다. 이 때문에 일반적으로는 잘 사용하지 않는다.

부동 소수점 표현

소수점의 위치를 고정하지 않고 가수(유효숫자)와 지수(소수점 위치)로 나누어 표현하는 방식

표현방법

8비트(부호 1비트, 지수 4비트, 가수 3비트)로 가정하고 3.5를 표현해보자.

  1. 10진수를 2진수로 변환(3.5 => 11.1)
  2. 정규화(=normalized form, 소수점 앞에 1만 남기기) => 1.11 * 2^1
  3. 부호/지수/가수로 저장
    1. 부호는 양수니까 0
    2. 지수는 초과표현을 사용 => 초과표현은 지수 비트가 N일때 2^(N-1)-1이므로 7초과 표현 => 1 + 7 = 8 => 1000
    3. 가수는 항상 앞이 1이므로 생략한다.(=히든비트) => 110

중간고사 끝나고 정리하는 부동소수점🥹