보수(補數, Complement)

2025. 2. 23. 19:27개발 배경지식/수학

 

보수(補數, Complement)란?

보수는 특정한 기준값(10, 100, 2^n 등)에서 부족한 만큼을 채워주는 값입니다. 보수를 활용하면 뺄셈을 덧셈으로 변환하여 연산을 쉽게 할 수 있으며, 특히 컴퓨터 연산에서 필수적으로 사용됩니다.


1. 보수의 종류

(1) 10의 보수

  • 기준값이 10, 100, 1000 등 10의 거듭제곱일 때 사용됩니다.
  • 방법: 기준값에서 해당 숫자를 뺀 값

예제

  • 7의 10의 보수 → 10 - 7 = 3
  • 92의 100의 보수 → 100 - 92 = 8

(2) 9의 보수

  • 각 자리 숫자를 9에서 뺀 값입니다.
  • 10의 보수를 구하는 중간 단계로 자주 사용됩니다.

예제

  • 345의 9의 보수 →
    • 3 → 9 - 3 = 6
    • 4 → 9 - 4 = 5
    • 5 → 9 - 5 = 4
    • 결과: 654

💡 10의 보수 구하기 → 9의 보수에 1을 더함

  • 345의 10의 보수 = 654 + 1 = 655

(3) 2의 보수 (컴퓨터 연산)

  • 컴퓨터의 이진 연산에서 음수 표현과 뺄셈 수행에 사용됩니다.
  • 방법:
    1. 1의 보수(비트 반전): 0 ↔ 1 변환
    2. 1을 더하기

예제

  • 0011(3)의 2의 보수
    1. 1의 보수 → 1100
    2. 1 더하기 → 1101 (-3 표현)

💡 컴퓨터에서 사용하는 이유

  • 뺄셈을 덧셈으로 변환하여 연산 속도를 높임
  • 예: 5 - 3 → 5 + (-3) → 5 + 2의 보수(3) 연산 가능

2. 보수의 활용

(1) 뺄셈을 덧셈으로 변환

  • 보수를 이용하면 뺄셈을 덧셈으로 바꿔 간단하게 계산할 수 있습니다.

예제: 46 - 29

  1. 29의 10의 보수 → 71
  2. 46 + 71 = 117
  3. 앞자리(100)를 버리면 17 → 결과 46 - 29 = 17

(2) 실생활에서 활용

  • 암산: 99 - 45 → (100 - 45) - 1 = 54
  • 시간 계산: 9:45에서 50분 후 → 10:35
  • 거스름돈 계산: 1000원 - 782원 = 218원

(3) 컴퓨터 연산에서 필수적

  • 2의 보수를 사용해 뺄셈을 덧셈으로 변환
  • 음수 표현 가능
  • 예: 0011(3) + 1101(-3) = 10000 (앞자리 1 버리고 0) → 정상적 계산 완료!

3. 보수 개념 정리

보수 유형  계산 방식 예제
10의 보수 기준값에서 숫자를 뺌 92 → 100 - 92 = 8
9의 보수 각 자리 숫자를 9에서 뺌 345 → 654
2의 보수 1의 보수를 구한 뒤 1을 더함 0011(3) → 1101(-3)

📌 핵심 요약

보수는 특정 기준에서 부족한 값을 채우는 개념
뺄셈을 덧셈으로 변환하여 연산을 간단하게 만듦
컴퓨터의 이진 연산에서 필수적으로 사용됨