IT 지식/CS 기초

컴퓨터의 뺄셈

Security Engineer 2024. 7. 31. 00:15

컴퓨터가 뺄셈 하는 방법(1)

  • 6 + 4 = 10 → 4는 6에 대한 10의 보수이다.
  • 13 - 6 = 7
  • 13에 6에 대한 10의 보수 4를 더하고, 10의 자리에서 1을 빼도, 역시 7이다.
  • 1 + ㅁ = 10 → ㅁ는 1에 대한 10의 보수이다. (1에 얼마를 더하면 10이 될까)
  • 2 + ㅁ = 10  ㅁ는 2에 대한 10의 보수이다. (2에 얼마를 더하면 10이 될까)
  • 보수 덧셈 → 뺄셈

 

 

컴퓨터가 뺄셈 하는 방법(2)

  • 2진수에서 0은 1로, 1은 0으로 뒤집으면 1의 보수가 된다. → NOT 게이트
  • 1의 보수에 1을 더하면 2의 보수이다. → 2의 보수 = 1의 보수 + 1
  • 어떤 숫자에 2의 보수를 더하면 자동으로 2진수 뺄셈이 된다. 단, 자리올림은 버린다.
2진수(4비트) 16진수
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

 

 

13 - 6 = 7을 2진수로 계산한다.

1101 - 0110 계산

  1. 2진수 0110의 1의 보수를 구한다. 
  2. 0110의 1의 보수 → 1001
  3. 여기에 1을 더한다. → 2의 보수 → 1001 + 1 = 1010 
  4. 1101 + 1010 = 1 0111 → 여기서 맨 앞의 1을 뺀다. → 0111
  5. 1101 - 1010 = 0111

 

 

9 - 6 = 3을 2진수로 계산한다.

1001 - 0110 계산

  1. 2진수 0110의 1의 보수를 구한다.
  2. 0110의 1의 보수 → 1001
  3. 여기에 1을 더한다. → 2의 보수 → 1001 + 1 = 1010 
  4. 1001 + 1010 = 1 0011 → 여기서 맨 앞의 1을 뺀다. → 0011
  5. 1001 - 0110 = 0011

 

 

결론

  • 덧셈이 가능하면 뺄셈이 된다.
  • 덧셈이 가능하면 곱셈이 된다. → 여러 번 더한다.
  • 덧셈이 가능하면 나눗셈이 된다. → 여러 번 뺀다.
  • 덧셈으로 사칙연산이 가능하다.

 

 

 

 

 

 

 

 

 

참고

https://www.inflearn.com/course/%EB%84%93%EA%B3%A0%EC%96%95%EA%B2%8C-%EC%BB%B4%EA%B3%B5-%EC%A0%84%EA%B3%B5%EC%9E%90