0

2의 보수 번호 란 무엇입니까?
왜 1의 보수를 취하여 1을 추가해야합니까? 1의 보수를 취한 후에 1을 빼는 것이 어떻습니까?
컴퓨터가 2의 보수를 사용하는 이유는 무엇입니까?2의 보수 번호 란 무엇입니까?

+1

방법이있다 c 또는 C++와 관련이 있습니까? – Asha

+0

[Wikipedia] (http://en.wikipedia.org/wiki/Two%27s_complement)에서 이것을 찾으셨습니까? 또는 Google과 함께 연구 해보십시오. –

+0

간단한 숫자와 1의 보수를 사용하여 분리하는 것은 하드웨어에서 구현하기에 충분하지 않은 메커니즘을 필요로하기 때문에 2의 보수를 사용하면 숫자를 빼는 방법과 마찬가지로 –

답변

6

2의 보수 번호 란 무엇입니까?

이용 번호 시스템은 음수를 나타 내기 위해 사용된다. 따라서, 2의 음수를 나타 내기 위해 보체 수 시스템이 사용됩니다.

UPDATE

Q: What “2’s Complement System” says? 

A: The negative equivalent of binary number is its 2’s complement. (1’s Complement + 1)

주 : 1 여분의 비트가 숫자의 부호를 표현하기 위해 필요합니다. MSB (Most Significant Bit)는 부호 비트로 사용됩니다. MSB가 0이면 숫자는 양수입니다. MSB가 1이면 숫자는 음수입니다.

1’s Complement Value 2’s Complement 
    011   +3   011 
    010   +2   010 
    001   +1   001 
    000   +0   000 
    111   -0   000 
    110   -1   111 
    101   -2   110 
    100   -3   101 
       -4   100 

How '100' (3 bits) is -4? 

MSB는 1, 부정적인 경우, 0 경우는 긍정적이고, 기호로서 사용된다.

-1 * 2^2 + 0*2^1 + 0*2^0 = -4 + 0 + 0 = -4 

마찬가지로 101 (3 비트) -3

-1 * 2^2 + 0*2^1 + 1*2^0 = -4 + 0 + 1 = -3 

관찰 :

• In 1’s complement, using 3 bits, we represented 2^3 = 8 numbers i.e from -3 to +3. 
• In 1’s complement, -0 and +0 are having 2 representation. (+0 is ‘000’ and -0 is ‘111’). 
    But mathematically +0 and -0 are same. 
• In 2’s complement, using 3 bits, we represented only 2^3 = 8 numbers i.e from -4 to +3. 
• In 2’s complement, -0 and +0 are having same representation. 
• Since +0 and -0 in 2’s complement is having same representation, 
    we are left out with one more combination which is ‘100’ = -4. 

왜 우리는 1의 보수를 타고 여기에 1을 추가하는 방법은 무엇입니까? 1의 보수를 취한 후에 1을 빼는 것이 어떻습니까?

아래의 링크에서 "왜 반전 및 추가 한 작품"항목을 참조하십시오. 내가 설명하기 시작하면이 게시물은 커집니다. http://www.cs.cornell.edu/~tomf/notes/cps104/twoscomp.html

이유는 컴퓨터 (2) 보수 '사용? 적은 하드웨어의 '

  • 왜냐하면. 컴퓨터가 2 '보완 수단을 사용하는 경우, 은 더하기 회로를 사용하여 빼기를 수행합니다. 그래서, 적은 하드웨어!
  • 위의 예에서 보듯이 +0과 -0은 같은 표현을 사용합니다. (1의 보수 및 부호 크기 표현은 +0 및 -0에 대해 2 개의 다른 표현을 가짐).
  • (중요하지 않음) 2의 보수를 사용하여 하나의 추가 숫자를 나타낼 수 있습니다. (위의 예에서는 3 비트를 사용하여 2 진수로 '100'이됩니다.).위키 Two's Complement 가입일
+4

+1 참조가 정말 좋습니다. –

0

는 :

의 보수 체계는 덧셈, 뺄셈, 곱셈의 기본적인 연산은 입력만큼 (부호없는 이진 숫자와 동일하다 장점을 갖는다 같은 수의 비트로 표현되고 그 비트를 넘는 모든 오버 플로우는 결과에서 제외됩니다. 이 속성은 시스템을보다 간단하게 구현하고 더 높은 정밀도의 산술을 쉽게 처리 할 수있게합니다. 또한, 0은 one-complement 시스템에 존재하는 음수 0과 관련된 미묘함을 제거하면서 단 하나의 표현만을 가진다.

0

우리가 1의 보수 대신 2의 보수를 사용하는 이유는 가능한 단순한 산술을 만드는 것입니다.

하나의 보수로 1111 11110000 0000이 같은 수임을 고려해보십시오. 하나를 빼면 ... 같은 숫자가됩니다. 이것은 생각하기에는 너무 큰 고통입니다. 따라서 대신 1111 1111이 -1 인 2의 보수를 사용합니다. 하나를 뺀 값을 빼면 성공적으로 1을 뺍니다. 만세!

는 (A 차 이점은 우리가 1의 보수에 비해 2의 보수에 또 하나의 고유 번호를 나타낼 수 있다는 것입니다 -. 2의 보수 -128에서 +127 대신 1의 보수 -127의 127에)