11월 21, 2016

2의 보수


보수(complement)란?

각 자리의 숫자의 합이 어느 일정한 수가 되게 하는 수.


1의 보수

binary 에서 원래 수를 반대로 뒤집은 것.

6: 00000110
6에 대한 1의 보수: 11111001

2의 보수

원래 값의 1의 보수를 취한 후 1을 더한 것으로 원래 값의 음수에 해당. 2의 보수는 binary에서 음수를 표현하는 과정에서 도입된 개념. 최상위 비트 하나를 음수를 표현하는 경우 +0(00000000)과 -0(11111111)의 두개의 0이 존재하는 문제가 발생하는데 2의 보수법으로 이런 문제를 피해갈 수 있음.

6: 00000110
-6 (6에 대한 2의 보수): 11111010

Binary subtraction

6 - 3 = 6 + (-3)

00000110 - 00000011 = 00000110 + 11111101 = 00000011


reference

댓글 없음:

댓글 쓰기