less than 1 minute read

부동소수점 산술 연산

가수 필드와 지수 필드 별도로 처리됨

- 덧셈과 뺄셈

    연산을 수행하기 전과 완료한 후에 소수점의 위치 조정이 필요하기 때문에 곱셈과 나눗셈보다 더 복잡

    소수점 위치 일치, 가수들간에 더하기/빼기 수행, 결과 정규화 과정으로 수행

    지수 조정 시 최상위/최하위 비트를 잃을 수 있는데 경우에 따라 더 작은 수를 시프트(버려서) 잃는 숫자를 상대적으로 작은 값으로 하여 오차 줄일 수 있음

    지수 조정, 가수 덧셈, 정규화 과정으로 파이프라인 단계로 나누어 수행함으로써 배열 요소들의 덧셈을 하는 등의 응용에 사용할 수 있음

- 곱셈과 나눗셈

    소수점 위치 조정이 필요하지 않음

    가수 사이에 직접 곱셈/나눗셈 수행하며 지수들은 곱셈/나눗셈의 경우 더하기/빼기

    가수 곱하기/나누기, 지수 더하기/빼기, 정규화 단계로 나눌 수 있음

    가수의 곱하기/나누기는 정수의 곱하기/나누기와 같은 방법으로 수행

    바이어스 값 고려 필요

- 오버/언더 플로우
    - 지수 오버 플로우는 무한대로 세트
    - 지수 언더 플로우는 0으로 세트
    - 가수 언더 플로우는 하위 비트들을 반올림이나 절삭으로 버림
    - 가수 언어 플로우는  가수를 우측으로 시프트하고 지수를 증가시켜 정규화