Study in SSAFY/Computer Science

[컴퓨터 구조] 보수(Complement)

hiflo 2023. 1. 17. 00:48

보수(Complement)

보충을 해주는 수를 의미한다. 주로 뺄셈과 논리 계산에 사용한다.

이진법을 예로 들면, 어떤 이진수를 커다란 2의 제곱수에서 빼서 얻은 이진수를 2의 보수라 한다.

 

 

2의 보수 (Two's Complement)

주어진 이진수보다 한 자리 높고, 가장 높은 자리가 1이며, 나머지가 0인 수에서 주어진 수를 빼서 얻은 수가 2의 보수이다.

대부분의 산술연산에서 원래 주어진 숫자의 음수처럼 취급된다.

 

예를 들어 8비트로 이진수를 표기할 때는 0부터 255까지의 숫자를 나타낼 수 있다.

하지만 2의 보수법을 사용하면, 맨 앞 비트를 부호 비트로 사용하여 -128부터 127까지의 숫자를 나타낼 수 있다.

(맨 앞이 0이면 양수, 1이면 음수)

 

 

 

2의 보수 계산법

다음과 같은 두 가지 과정만 거치면 2의 보수를 쉽게 구할 수 있다.

 

1. 모든 0과 1을 뒤집는다.

2. 그 수에 1을 더한다.

 

 

 

그 이유에 대해 아래 블로그에 차근차근 잘 설명되어 있어 추가적으로 가져왔다.

https://coding-factory.tistory.com/653

 

[수학] 보수 계산법 (1의보수, 2의보수) + 필요한 이유

보수란 보수는 보충을 해주는 수를 의미합니다. 현재의 숫자에서 자릿수가 1단계 올라갈 수 있는 수가 몇인지를 구하시면 됩니다. 보수 구하기 예시 10진수 1의 보수 : 1+9=10 -> 1의 보수 = 9 3의 보

coding-factory.tistory.com

 

 

아래 웹 사이트를 통해 2의 보수를 직접 확인하며 쉽게 이해할 수 있다!

https://www.omnicalculator.com/math/twos-complement

 

Two's Complement Calculator

Here is the two's complement calculator (or 2's complement calculator), a fantastic tool that helps you find the opposite of any binary number and turn this two's complement to a decimal value. You have an opportunity to learn what the two's complement rep

www.omnicalculator.com