0

Что такое номер дополнения 2?
Почему мы берем 1 дополнение и добавляем 1 к нему? Почему бы нам не вычесть 1 после приема 1 дополнения?
Почему компьютеры используют дополнение 2?Что такое номер дополнения 2?

+1

, как это связанные с c или C++? – Asha

+0

Вы вообще искали это в [Википедии] (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 (самый значащий бит) используется в качестве знакового бита. Если 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' комплемента?

  • Cos 'меньше оборудования. Если компьютер использует 2 'средства комплемента, , это вычитание с использованием схемы сложения. Итак, меньше оборудования !!!
  • Как видно из приведенного выше примера, +0 и -0 имеют одинаковое представление. (1 дополнение и знаковое представление величины имеют 2 разных представления для +0 и -0).
  • (Не важно). Вы можете представить один дополнительный номер с помощью дополнения 2. (в приведенном выше примере его -4, который равен «100» в двоичном формате, используя 3 бита).
+4

+1 Ссылка действительно хорошая. –

0

Материал из Википедии Two's Complement:

Система дополнительном коде комплемента имеет то преимущество, что основные арифметические операции сложения, вычитания и умножения идентичны таковым для беззнаковых двоичных чисел (до тех пор, как входы представлены в том же количестве бит, и любое переполнение за пределами этих битов отбрасывается из результата). Это свойство делает систему более простой в применении и способной легко справляться с арифметикой с более высокой точностью. Кроме того, ноль имеет только одно представление, устраняя тонкости, связанные с отрицательным нулем, который существует в системах с одним дополнением.

0

Причина, по которой мы используем дополнение двух, а не дополнение, состоит в том, чтобы сделать арифметику максимально простой.

Учитывайте, что в одном дополнении 1111 1111 и 0000 0000 - это то же самое число - путем вычитания одного из них мы получили то же число. Это слишком большая боль, о которой нужно думать, поэтому вместо этого мы используем дополнение двух, где 1111 1111 равно -1 - путем вычитания одного из них мы с успехом вычтем его. Ура!

(Вторичное преимущество состоит в том, что мы можем представить еще один уникальный номер в виде дополнения до двух, чем в своем комплемента. - в дополнение по -128 до +127 вместо своего дополнения -127 до +127)

Смежные вопросы