1의 보수, 2의 보수, 2진수 뺄셈

1의 보수, 2의 보수, 2진수 뺄셈

2진수: 0과 1로만 이뤄져 있다.

1의 보수: 2진수를 뒤집는다. 다시 말해 0을 1로, 1을 0으로 바꾼다.

2의 보수: 1의 보수에 1을 더한다.

ex) 2진수: 01001

     1의 보수: 10110

     2의 보수: 10111

2진수 뺄셈

“50-30″을 “50+(-30)”으로 바꿀 수 있듯이,

“2진수-2진수”를 “2진수+(2의보수)”로 바꿀 수 있다.

다시 말해 2진수 뺄셈은 2의 보수를 이용해서 덧셈으로 바꿀 수 있다.

단, 제일 앞자리는 부호비트이므로 계산 후 떼어내야 한다.

 

​예) 5 빼기 3 을 2진수로 계산하라.

5-3

(2진수로 바꾸면)=> 101-011

(뒤의 숫자 3을 2의 보수로 바꾸면)=> 101+(101)

(계산하면)=>1010

(제일 앞자리 하나를 떼어내자. 자리올림으로 발생한 숫자는 떼어내야 함)=>010

(10진수로 바꾸면)=> 2

5-3=2 이다.