В чем преимущество 2 дополнения над 1 дополнением в представлении отрицательного числа в двоичной системе чисел? Как это влияет на диапазон значений, хранящихся в определенном битовом представлении числа в двоичной системе?
Преимущество 2 дополнения над 1 дополнением?
Ответ 1
Основное преимущество двух дополнений над одним дополнением состоит в том, что два дополнения имеют только одно значение для нуля. У одного дополнения есть "положительный" ноль и "отрицательный" ноль.
Далее, чтобы добавить числа, используя одно дополнение, вам нужно сначала выполнить двоичное добавление, а затем добавить значение переноса конца.
Два дополнения имеют только одно значение для нуля и не требуют значений переноса.
Вы также задали вопрос о том, как влияет диапазон сохраненных значений. Рассмотрим восьмибитовое целочисленное значение, следующие минимальные и максимальные значения:
Notation Min Max
========== ==== ====
Unsigned: 0 255
One Comp: -127 +127
Two Comp: -128 +127
Литература:
Ответ 2
Основные преимущества:
-
В 1 есть
-0
(11111111
) и+0
(00000000
), т.е. два значения для одного и того же0
. С другой стороны, в 2 дополнениях существует только одно значение для0
(00000000
). Это потому что+0 --> 00000000
а также
-0 --> 00000000 --> 11111111 + 1 --> 00000000
-
Выполняя арифметические операции, такие как сложение или вычитание с использованием 1, мы должны добавить дополнительный бит переноса, т.е.
1
к результату, чтобы получить правильный ответ, например:+1(00000001) + -1(11111110) ----------------- = (11111111)
но правильный ответ 0
. Чтобы получить 0
мы должны добавить бит переноса 1
к результату (11111111 + 1 = 00000000
).
В 2 дополнениях результат не нужно изменять:
+1(00000001)
+
-1(11111111)
-----------------
= 1 00000000
Ответ 3
Отрицательные целые числа: 2 имеет смысл использовать для отрицательных целых чисел. 1 - это просто метод вычисления, который может быть полезен для оценки 2-х дополнений. Реальным (побежденным) соперником из 2 дополнений было представление знаковой величины для отрицательных целых чисел.
Нет переполнения: 1 дополнение не имеет специального использования для отрицательных целых чисел. 2 имеет смысл, поскольку он может использоваться в естественной арифметике сложения и вычитания без необходимости изменять биты. Если переполнение не происходит, бит знака результата является правильным значением. Продвижение номера бит в этой нотации прямолинейно, например, для продвижения 8-разрядного целого числа со знаком до 16, мы могли бы просто повторить бит знака целочисленного значения в старшем байте.
Знак величины:. Наоборот, нота знака-величины - это просто способ, которым человек использует для представления отрицательных целых чисел. Арифметика вычитания количества бит и сложения сложения сбрасывается с помощью этих обозначений.
Ответ 4
Преимущества дополнения Twos # 1
В представлении Subos Complement значение 0 равно однозначно представленный тем, что все биты установлены на ноль:
**
Преимущества дополнения Twos # 2
** Когда вы выполняете арифметическую операцию (например, сложение, вычитание, умножение, деление) на два целых чисел в представлении Twos Complement, вы можешь использовать точно такой же метод как будто у вас было два целые без знака (т.е. целые неотрицательные числа без знака немного)... КРОМЕ , вы выбрасываете высокий перенос (или высокий заимствовать для вычитания)
Преимущества дополнения Twos # 3
Это свойство представления Twos Complement так
невероятно удобно, что практически каждый общий
Цель компьютер, доступный сегодня, использует Twos Complement. Зачем? Потому что, с Twos Complement, нам не нужно специальные алгоритмы (и, следовательно, дополнительной схемы) для арифметические операции, которые включают отрицательные значения.
Ответ 5
Другим важным преимуществом двух дополнений к подписанному представлению бит является представление с двумя дополнениями, которое легко манипулировать на аппаратном уровне.
Ответ 6
2s дополнение не означает, что отрицательное число является обратным.
означает, что вы можете сделать A + B '(где B' является дополнением Bs к B), чтобы дать A - B, означает, что вы можете делать все с помощью сумматора и не нуждаетесь в выгрузчике