컴퓨터 산술

금액 계산에서 2진수 부동소수점수가 아니라 최소 단위(1엔이나 1센트)를 1로 하는 정수로 다루는 경우가 많은 주된 이유는 무엇입니까?

  1. A부동소수점수로는 큰 금액을 전혀 나타낼 수 없기 때문
  2. B정수가 부동소수점수보다 반드시 메모리 사용량이 적기 때문
  3. C10진수 소수를 2진수로 정확히 나타내지 못해 오차가 생기기 때문
정답과 해설 보기

정답: C. 10진수 소수를 2진수로 정확히 나타내지 못해 오차가 생기기 때문

10진수 0.1이나 0.01은 2진수 부동소수점수로는 정확히 나타낼 수 없어 반올림한 가까운 값이 됩니다. 덧셈을 반복하면 오차가 누적되어 합계가 1엔 어긋나는 문제가 일어날 수 있습니다. 금액에서는 1엔의 오차도 허용되지 않으므로 최소 단위를 1로 하는 정수로 계산하거나 10진수 그대로 계산하는 형식을 사용합니다. 부동소수점수로도 큰 금액의 대략적인 값은 나타낼 수 있으며, 메모리 사용량이 이유도 아닙니다.

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

컴퓨터 산술의 다른 문제

  1. AI 혼합 정밀도 학습에서 계산의 대부분을 FP16이나 bfloat16으로 수행하면서 가중치의 원래 값(마스터 가중치)을 FP32로 유지해 두는 주된 이유는 무엇입니까?
  2. 8비트 중 하위 4비트를 소수부로 하는 고정소수점(부호 없음)에서, 비트열 0011 1000이 나타내는 값은 얼마입니까?
  3. IEEE 754 부동소수점수를 구성하는 3가지 부분의 조합으로 올바른 것은 무엇입니까?
  4. IEEE 754 단정밀도(32비트) 부동소수점수에서 부호·지수부·가수에 할당되는 비트 수의 조합은 무엇입니까?
  5. IEEE 754 배정밀도(64비트) 부동소수점수에서 지수부와 가수의 비트 수 조합으로 올바른 것은 무엇입니까?