complement number system
1. Unsigned Number and Signed Numbers
기본적으로 2진법으로 표현된다.
다만 signed numbers는 앞에 첫 1 bit가 부호로 표현이 된다.
0인 경우 아무것도 없으니 +
1인경우 1 작대기가 있으니 -로 부호가 표시된다.
다만 이런게 표현할 경우 몇가지 문제점이 생긴다.
2. Complement Number systerm - 보수
보수를 사용하게 되면 - 부호가 없이도 뺄셈 등을 할 수 있다.
이는 컴퓨터 bit들을 가지고 연산을 할 때 유용하게 사용된다.
컴퓨터는 사칙 연산을 할 때
1. 2진수
2. 가산기
만을 이용해서 계산을 한다.
그래서 뺄셈이나 나눗셈을 할 때는 보수를 이용해서 해야한다.
예를 들어서
9 - 6 = 3이다 뺄셈을 우리는 쉽게 계산할 수 있지만
보수를 이용해 뺄셈을 할때는
-6의 보수 -> 4를 더해서 한다.
9 + 4 = 13 에서 마지막 숫자 3만 뽑아서 한다.
보수는 2가지가 사용된다. n진수에서
Radix - complment : n's complement number system
Diminished Radix - complment : (n-1)'s complement number system
ex) 2진수에서 Diminished Radix (1의 보수)
2진수에서 Radix (2의 보수)
두 complement의 비교
결론적으로 2진수로 뺄셈을 할 때 특히 Radix로 할 때는
1. 빼고자 하는 숫자의 0과 1을 서로 바꾸어준다.
2. 바꾼 숫자에 1을 더해준다.
3. 산수 계산을 해준다.
4. ex) 4bit 계산일 떄 5bit 숫자는 삭제한다.