최종 수정 : 24.12.31
보수
인간이 계산하는 사칙연산을 컴퓨터에서는 연산장치가 담당하고 있는데, 가산기라는 장치에서 덧셈이 이루어진다. 뺄셈인 경우는 예를 들어서 10-5를 연산장치에서는 10+(-5)로 10과 -5를 가산기에서 처리하게 된다. 2 x 3인 곱셈은 2+2+2로 가산을 하면 10/2인 나눗셈은 10에서 2를 빼서 0이 될 때까지 뺀 횟수를 계산하게 된다. 컴퓨터에서 보수는 음수를 표현하는 기능으로 사용한다.
1. 보수체계
10진수에서는 9의 보수와 10의 보수가 있으며 2진수에서는 1의 보수와 2의 보수가 있다. 9의 보수는 각 자리마다 합해서 9가 되는 수이며 10의 보수는 9의 보수에 1을 더한 수이다.
1의 보수는 각 자리마다 합해서 1이 되는 수이며 2의 보수는 1의 보수는 1의 보수에 1을 더한 수이다.
보수를 사용하여 연산을 하는 경우는 음수를 표현하고자 할 때 사용한다.
2. 보수를 이용한 연산
컴퓨터의 연산장치에서는 뺄셈을 하는 방법으로 보수를 사용한다. 1의 보수방식으로 계산중에 자리올림 수가 발생하면 양수의 의미이며 +1을 하면 된다. 2의 보수방식으로 계산중에 자리올림수가 발생하면 양수의 의미이며 +1이 필요 없다. 즉, 보수를 만들 때 2의 보수는 이미 +1 처리를 했기 때문이다. 대부분 장치에서는 2의 보수방식을 사용한다.
1) 1의 보수를 이용한 5-3의 계산
먼저 1의 보수를 사용하여 5-3을 계산한다면 5+(-3)으로 5와 -3을 더하게 된다. 이때 음수값 -3을 1의 보수를 취하여 계삲게 된다. 자리올림수가 발생하면 양수의 의미이며 그 올림수를 더해주어야 한다.
2) 2의 보수를 이용한 5-3의 계산
먼저 1의 보수를 사용하여 5-3을 계산한다면 5_(-3)으로 5와 -3을 더하게 된다. 이때 음수 값 -3을 2의 보수를 취하여 계산하게 된다. 자리올림수가 발생하면 양수의 의미이며 그 올림수는 버린다. 이미 보수를 취할 때 +1을 했기 때문이다.
1의 보수방식으로 계산중에 자리올림수가 발생하지 않으면 음수의 의미이며 그 수 자체가 1의 보수로 음수값이 된다. 마찬가지로 2의 보수방식도 그 자체가 음수이다. 2진수 음수값은 다시 봇를 취하면(재보수) 확실한 값을 알 수 있다. 이때 1의 보수로 계산했으면 1의보수로 재보수를 취하고 2의 보수로 계산했으면 2의 보수로 재보수를 취하면 된다.
3) 1의 보수를 이용한 3-5의 계산
먼저 1의 보수를 사용하여 3-5를 계산한다면 3+(-5)로 3과 -5를 더하게 된다. 이때 음수값 -5을 1의 보수를 취하여 계산하게 된다. 자리올림수가 발생하지 않으면 음수이다. 그 음수의 의미는 1의 보수로 표현된 음수이다.
4) 2의 보수를 이용한 3-5의 계산
먼저 2의 보수를 사용하여 3-5를 계산한다면 3+(-5)로 3과 -5를 더하게 된다. 이때 음수값 -5를 2의 보수를 취하여 계산하게 된다. 자리올림수가 발생하지 않으면 음수이다. 그 음수의 의미는 2의 보수로 표현된 음수이다.
참고
독학사 교재
댓글