CS/컴퓨터 구조

2장 : 컴퓨터 산술/논리 - (5) 부동 소수점 산술 연산

infobox503 2024. 11. 22. 09:35

<요약>

  • 부동소수점
    • 덧셈, 뺄셈
    • 곱셈, 나눗셈
    • 오버플로우
      • 종류
        • 지수 오버플로우
        • 지수 언더플로우
        • 가수 오버플로우
        • 가수 언더플로우

1. 덧셈, 뺄셈

  • 단계
    • 지수 조정
      • 서로 값의 지수가 일치하도록 조정(시프트 연산)
      • 작은 수를 시프트
        • → 큰 수가 시프트 하면 손실값이 더 클 수 있으니 작은 수를 시프트 연산
    • 가수 연산
      • 가수끼리 연산
    • 정규화
      • 연산 결과를 부동소수점 형식에 맞게 표기
  • 파이프라이닝
    • 가능
      • 지수 조정, 가수 연산, 정규화로 단계를 나눌 수 있음
      • 따라서, 각 단계로 나뉘니 파이프라인 적용

2. 곱셈, 나눗셈

  • 곱셈 과정
    • 가수들을 곱함
    • 지수들을 더함
      • 둘 다 바이어스가 적용돼있으니, 바이어스 1개 빼줌
    • 정규화
  • 나눗셈 과정
    • 가수들을 나눔
    • 피제수의 지수에서 제수의 지수 빼기
      • 둘 다 바이어스가 적용돼있으니, 바이어스 1개 더함
    • 정규화
  • 곱셈 예시

 

3. 부동소수점 연산 오버플로우

  • 종류
    • 지수 오버플로우
      • 지수의 맥스 크기를 넘어서는 표현
    • 지수 언더플로우
      • 지수의 최소 크기를 넘어서는 작은 표현
    • 가수 언더플로우
      • 가수의 최소 크기를 넘어서는 작은 표현
      • 반올림, 절삭 사용해서 실제로 오류 발생X
    • 가수 오버플로우
      • 가수의 최대 크기를 넘어서는 표현
      • 지수를 조정해서 가수 값이 넘치지 않도록 가능
    ⇒ 가수는 언더, 오버플로우가 발생하지 않음. 따라서 정밀도가 떨어진다는 개념임