ABOUT ME

Trust your instincts!

Today
Yesterday
Total
  • IEEE 754와 부동 소수점
    Extra Knowledge 2023. 9. 22. 03:59

    * IEEE 754 

    • 컴퓨터에서 부동소수점을 표현하기 위해 가장 널리 쓰이는 표준

     

    * IEEE ? 

    전기전자공학자협회(Institute of Electrical and Electronics Engineers, IEEE)는 전기전자공학 전문가들의 국제조직이다.

    IEEE는 'I-Triple-E'(아이 트리플 이)라고 발음하며, 미국의 뉴욕에 위치하고 있다. 2004년 150개국 35만 명의 회원으로 구성된 전기전자공학에 관한 최대 기술 조직으로 주요 표준 및 연구 정책을 발전시키고 있다. 주요 역할은 전기 전자에 대한 산업 표준 회의를 통하여 정하고 이것을 공표하여, 산업 기기간의 표준화를 구현한다.

     

    부동 소수점이란?

    • 뜰 부 + 움직일 동 = 떠서 움직이는 소수점 
    • 우리가 배웠던 일반적인 소수
      • 123.45 (123 : 정수부, 45 : 소수부)
      • 부동 소수점의 경우 유효숫자를 사용한 곱셈 형태로 표현
      • (부호) * (가수) * (밑수)^(지수)
        • 가수 : 유효숫자
        • 지수 : 소수점 위치 
      • 정규화 : 가수의 첫 번째 자리가 밑수보다 작은 한자리 자연수로 바꾸는 것
        • 12.345
          • 가수부 12.345(밑수보다 크니까 소수점 한자리 올림) -> 1.2345
          • 밑수 10 (10진수)
      • 지수의 값이 변하게 되면 소수점이 이동
        • 왼쪽 그림의 경우 123.45 기준으로 적어놓은 것
        • 원래 소수점 있던 곳이 지수가 0인 지점이고, 왼쪽으로 옮기면 1, 2, 3 / 오른쪽으로 옮기면 0, -1, ... 

     

    • 이진수로 표현 

     

    IEEE 754 부동 소수점 형식

    https://devocean.sk.com/blog/techBoardDetail.do?ID=165270

     

    * 가수부 처리 

    • 부동 소수점 방식은 정규화를 거치게 되는데, 정수 부분의 값이 클 수록 가수부의 크기도 커진다.
      • 123456.7890 이라는 실수를 표현하려 하는데, 만약 가수부 자릿수가 5라고 하면?
      • 1.234567890 * 10^5 (정규화) ->  1.23456 뒤부터는 잘려버린다. 
    • 가수부 자릿수가 더 클수록 원래의 값을 많이 유지하게 되고, 정밀도가 올라간다. 
    • 이 잘리는 부분을 어떻게 처리할 것인가?
      • 짝수로 반올림 
        • 기본적으로 이 방식을 채택 
        • 소수부분이 정확히 0.5일 경우, 앞자리가 짝수라면 짝수 유지, 홀수라면 가까운 큰 정수로 반올림
          • 4.5 -> 4
          • 5.5 -> 6
      • 큰 절대값으로 반올림
        • 0.5 ~ 언제나 큰 정수로 반올림
          • 4.5 -> 5
          • 5.5 -> 6
      • 올림
        • 양의 무한대로 반올림
      • 버림
        • 음의 무한대로 반올림 
      • 절삭
        • 소수부분을 무시하고 가장 작은 정수로 

     

    • 부동 소수점 구성 예시 (32bit float 형) 

     

     

     

    참고글 

Designed by Tistory.