컴퓨터 산술

신호 처리에서 사용되는 포화 연산의 설명으로 올바른 것은 무엇입니까?

  1. A결과가 표현 가능한 최댓값을 넘으면 반대쪽으로 되돌아 넘어가지 않고 최댓값에 머문다
  2. B결과가 최댓값을 넘으면 자동으로 비트 수를 늘려 정확한 값을 유지한다
  3. C결과가 최댓값을 넘으면 0으로 되돌리고 다시 시작한다
정답과 해설 보기

정답: A. 결과가 표현 가능한 최댓값을 넘으면 반대쪽으로 되돌아 넘어가지 않고 최댓값에 머문다

일반적인 정수 연산에서는 최댓값을 넘으면 오버플로로 최솟값 쪽으로 되돌아 넘어가, 예를 들어 8비트 부호 있는 정수에서 127 + 1은 −128이 됩니다. 음성이나 영상에서 이것이 일어나면 가장 밝은 점이 갑자기 어두워지는 것 같은 큰 오차가 됩니다. 포화 연산에서는 최댓값을 넘으면 최댓값(127), 최솟값 미만이면 최솟값(−128)에 머무르므로 오차가 작게 억제됩니다. DSP나 SIMD 명령에 마련되어 있습니다. 비트 수를 늘리거나 0으로 되돌리지는 않습니다.

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

컴퓨터 산술의 다른 문제

  1. 캐리 룩어헤드 가산기에서 사용하는 각 자리의 생성 신호 g와 전파 신호 p의 정의(a, b는 그 자리의 입력)와, 윗자리로의 올림 c(i+1)의 식의 조합으로 올바른 것은 무엇입니까?
  2. 승산기에서 다수의 부분곱을 더하는 데 캐리 세이브 가산기가 사용되는 주된 이유는 무엇입니까?
  3. 고속 승산기에서 사용되는 월리스 트리의 특징으로 올바른 것은 무엇입니까?
  4. 승산기에서 기수 4 부스 알고리즘(부스 부호화)을 사용하는 주된 효과는 무엇입니까?
  5. 부호 없는 8비트 수끼리를 곱했을 때 결과를 오버플로 없이 나타내는 데 필요한 비트 수는 무엇입니까?