티스토리 뷰

기타 스터디/컴퓨터,자료구조

보수

박스여우 2015. 3. 26. 15:57

보수

보수에 대해서

보수는 보충해 주는수라는 뜻이고, 자릿수 올림에 필요한 최소한의 수(부족한수)입니다.

 

우선 9의 보수를 보면,

9로 채워진 칸에 임의의수 A를 뺀다고 생각하시면 됩니다.

9999 - 1234 = 8765

예 바로 8765가 1234의 9의 보수입니다.

여기서 8765+1을 하게되면 10의 보수가 되는것입니다.

 

이해를 돕기위해 10진수에서 거꾸로 생각하면,

10진수 1234의 보수는(10000-1234=)8766

8766에서 -1을하면 9의 보수값이 되는것입니다.

 

 

 

 

이번에는,

6612의 8의보수를 구해봅시다

 

우선 7의 보수로 7777-6612를 구한뒤 +1을 더하면 됩니다.

7777-6612 = 1165 +1

1166

 

왜 8의보수로 바로 구하지 않냐구요?

8의 진수로 10000-6612이렇게 구하는것보다,

7777-6612을 구한 후 1을 더하는것이 계산하기에 훨씬 쉽기 때문입니다.

 

 

 

2의보수도 같습니다.

우선 1의보수로

1111 - 1010(10진수로 10) = 0101+1 (0110)

 

 

 

 

 

 

n보수를 구하는 법은

n진수만 구할수있습니다.

 

예를들어 7의 보수는 7진수만 가능하고,

3의 보수는 3진수만 가능합니다.

 

채울수있는 칸에 들어갈수있는수가 초과하면 계산이 불가능하기 때문입니다.

(3333-2345)

 

A에대한 B의보수는 C다

 

 

 

 

2진수의 3가지 표현 방법인 '부호절대값 형식 표현'과 '1의 보수 형식 표현', '2의 보수 형식 표현' 에서 양수(+)에 대한 표현 방법은 모두 같습니다.

 음수(-)를 표현하는 방법에 있어서 (n-1)비트의 절대값으로 표현하고 최상위 비트에 음수 부호를 나타내는 1을 표시 하느냐, n비트의 1의보수로 표현하느냐, n비트의 2의 보수로 표현하느냐의 차이만 있습니다.


*부호절대값 형식

음수(-) 표현은 부호비트만 다르게 하여 사람이 사용하는 음수 형태로 표현해서 편리해 보이지만, 컴퓨터의 입장에서 보면 부호와 절대값을 따로 구분해서 처리해야 한다. 그리고 덧셈기와 뺄셈기를 따로 구현해야 하기 때문에 회로가 복잡해져서 실제로는 사용하지 않는다.


*1의 보수 형식

부호와 절대값을 따로 계산하지 않아도 되고 음수 간의 덧셈으로 뺄셈을 처리 할 수 있어 뺄셈기를 구현할 필요가 없다. 따라서 부호절대값 형식보다 회로가 간단해지지만 +0(00000000) -0(11111111)이 존재하는 논리적 오류가 발생한다.


*2의 보수 형식

1의 보수에 1을 더함으로써 -0을 제거하여 덧셈 연산에 대한 처리를 더 단순화시킨다. 따라서 2의 보수 형식이 음수를 표현하는 방법 중에서 가장 단순하고 효율적인 회로를 구성할 수있어 컴퓨터 시스템에서 실제로 사용하는 표현 형식이다. 

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함