컴퓨터에서의 실수 표현

이유석·2022년 1월 4일
0

컴퓨터에서 실수를 표현하는 방법은 고정 소수점부동 소수점 두가지 방식이 존재한다.

고정 소수점 (Fixed Point)

  • 소수점이 찍힐 위치를 미리 정해놓고 소수를 표현하는 방식 (정수 + 소수)

  • 실수를 표현 하기 위해, 부호, 정수부, 소수부 3가지 요소가 필요하다.

  • 장점
    실수를 정수부와 소수부로 표현하여 단순하다.

  • 단점
    표현의 범위가 너무 적어서 활용하기 힘들다.
    (정수부는 15bit, 소수부는 16bit)

  • 높은 정밀도가 필요 없는 소규모 시스템에서는 간혹 쓰인다.

부동 소수점 (Floating Point)

  • 실수를 가수부 + 지수부 로 표현한다.
    가수 : 실수의 실제값 표현
    지수 : 크기를 표현함. 가수의 어디쯤에 소수점이 있는지 나타냄

소수점의 위치가 고정되어 있지 않다.

  • 장점
    표현할 수 있는 범위가 넓어진다.
    (현재 대부분의 시스템에서 활용 중)

  • 단점
    오차가 발생할 수 있다.
    (부동 소수점으로 표현할 수 있는 방법이 매우 다양함)

부동 소수점 방식의 오차

  • 부동 소수점 방식에 의한 실수의 표현은 항상 오차가 존재한다는 단점이 있음

  • 실수를 a*2^b 형식으로 저장 한다. (1 ≤ a < 2 인 실수)

    ±(1.가수부)×2^지수부-127

  • 가수부의 부분이 2진수로 표현하게 되면 무한 소수로 표현되게 되어 메모리 범위를 벗어날시, 해당 데이터가 사라지게 되므로 실제 수와 오차가 생겨나게 된다.
profile
https://github.com/yuseogi0218

0개의 댓글