컴퓨터 산술

부호 없는 정수끼리의 덧셈에서 결과가 표현 가능한 범위를 넘은(오버플로한) 것을 판정하는 방법으로 올바른 것은 무엇입니까?

  1. A결과의 최상위 비트가 1이 되었는지를 본다
  2. B두 입력의 최상위 비트가 같은지를 본다
  3. C최상위 비트에서 바깥으로 올림이 나왔는지를 본다
정답과 해설 보기

정답: C. 최상위 비트에서 바깥으로 올림이 나왔는지를 본다

부호 없는 덧셈에서는 최상위 비트에서 더 위로 올림이 나왔을 때 결과가 비트 수로 표현할 수 있는 최댓값을 넘은 것입니다. CPU에서는 이 올림이 캐리 플래그로 남으므로 그것을 조사하면 판정할 수 있습니다. 결과의 최상위 비트가 1이 되는 것은 단순히 큰 수가 된 것일 뿐 오버플로가 아닙니다. 최상위 비트로의 올림과 최상위 비트에서의 올림의 차이를 보는 것은 부호 있는 수의 오버플로 판정 방법입니다.

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

컴퓨터 산술의 다른 문제

  1. 부동소수점수에서 인접한 표현 가능한 값끼리의 간격에 대한 설명으로 올바른 것은 무엇입니까?
  2. IEEE 754 단정밀도 부동소수점수에서 0부터 시작하여 모든 정수를 정확히 나타낼 수 있는 상한은 무엇입니까?
  3. 금액 계산에서 2진수 부동소수점수가 아니라 최소 단위(1엔이나 1센트)를 1로 하는 정수로 다루는 경우가 많은 주된 이유는 무엇입니까?
  4. AI 혼합 정밀도 학습에서 계산의 대부분을 FP16이나 bfloat16으로 수행하면서 가중치의 원래 값(마스터 가중치)을 FP32로 유지해 두는 주된 이유는 무엇입니까?
  5. 8비트 중 하위 4비트를 소수부로 하는 고정소수점(부호 없음)에서, 비트열 0011 1000이 나타내는 값은 얼마입니까?