컴퓨터 산술

IEEE 754 비정규화수(서브노멀 수)의 역할로 올바른 것은 무엇입니까?

  1. A가장 큰 정규화수보다 큰 값을 나타내어 오버플로를 방지한다
  2. B계산 오류를 검출하여 결과를 NaN으로 대체한다
  3. C정규화수와 0 사이를 메워 언더플로를 완만하게 한다
정답과 해설 보기

정답: C. 정규화수와 0 사이를 메워 언더플로를 완만하게 한다

정규화수만으로는 가장 작은 정규화수(단정밀도에서 약 1.18 × 10⁻³⁸)와 0 사이에 큰 틈이 생겨, 그보다 작은 결과는 갑자기 0이 되어 버립니다. 비정규화수는 지수부를 모두 0으로 하고 맨 앞의 1을 가정하지 않음으로써 이 틈을 등간격의 작은 수로 메웁니다(점진적 언더플로). 이로써 x − y = 0이면 x = y라는 성질이 유지됩니다. 큰 값을 나타내는 것이 아니며, 그쪽은 무한대로 나타냅니다. 오류 검출과도 관계가 없습니다.

이 분야 연습하기 분야로 돌아가기

컴퓨터 산술의 다른 문제

  1. 비정규화수를 많이 포함하는 계산에서 일부 프로세서는 처리가 크게 느려질 수 있습니다. 그래서 성능을 우선하는 상황에서 사용되는 설정은 무엇입니까?
  2. IEEE 754 부동소수점수 연산에서 양수를 0으로 나눴을 때의 결과로 규격에 정해진 것은 무엇입니까?
  3. x가 NaN일 때, 많은 프로그래밍 언어에서 x == x를 평가한 결과는 무엇입니까?
  4. IEEE 754 단정밀도에서 지수부가 모두 1(255)인 비트열이 나타내는 것의 설명으로 올바른 것은 무엇입니까?
  5. IEEE 754 부동소수점수에서 +0과 −0에 대한 설명으로 올바른 것은 무엇입니까?