Два дополнения - это математическая операция над двоичными числами, и пример поразрядной дополнять. Он используется в вычислительной технике в качестве метода подписал представление числа.
В дополнение к п-разрядное число определяется как его дополнения применительно к 2. Например, для трех-разрядный номер 010, два комплекта составляет 110, поскольку 010 + 110 = 1000. Дополнения two рассчитывается путем перестановки цифр и добавлением одного.
Десятичные значение |
Бинарные (two's-дополнения представительство) |
Два дополнить (2 − н)2 |
---|---|---|
0 | 000 | 000 |
1 | 001 | 111 |
2 | 010 | 110 |
3 | 011 | 101 |
−4 | 100 | 100 |
−3 | 101 | 011 |
−2 | 110 | 010 |
−1 | 111 | 001 |
Десятичные значение |
Бинарные (two's-дополнения представительство) |
Два дополнить (2 − н)2 |
---|---|---|
0 | 0000 0000 | 0000 0000 |
1 | 0000 0001 | 1111 1111 |
2 | 0000 0010 | 1111 1110 |
126 | 0111 1110 | 1000 0010 |
127 | 0111 1111 | 1000 0001 |
−128 | 1000 0000 | 1000 0000 |
−127 | 1000 0001 | 0111 1111 |
−126 | 1000 0010 | 0111 1110 |
−2 | 1111 1110 | 0000 0010 |
−1 | 1111 1111 | 0000 0001 |
Два дополнения-это самый распространенный способ представления знаковых целых чисел на компьютерах, и, как правило, фиксированная точка двоичные значения. В этой схеме, если двоичное число 0102 кодирует целое число со знаком 210, то два дополнения, 1102, кодирует обратную: -210. Другими словами, чтобы изменить знак всего числа (все, кроме одного) в этой схеме, вы можете взять дополнение двух его двоичное представление. Таблицы справа иллюстрируют это свойство.
По сравнению с другими системами для представления числами со знаком (например, одни дополняют), два дополнения имеет то преимущество, что основных арифметических операций сложения, вычитания и умножения идентичны для беззнаковых двоичных чисел (при условии, что входные данные представлены в таком же количестве бит - в качестве выходных данных, и в случае переполнения помимо тех, которые биты удаляются из результата). Это свойство делает систему проще реализовать, особенно для более высокой точности арифметики. В отличие от систем одни дополнения, дополнения two имеет представительство отрицательный нуль, и, следовательно, не страдают от связанных с ней трудностей.
Удобно, еще один способ нахождения суммы ряда взять его только дополнить и добавить один: сумма числа и его только дополняют все это '1' бит, или 2 − 1; и по определению, сумма ряда и два комплемента 2.
Метод дополняет уже давно используется для выполнения вычитания в десятичной машины и механические калькуляторы. Джон фон Нейман предложил использовать два дополнительном двоичном представлении в 1945 первого проекта доклада на ЕДВАК предложение на электронный запрограммированный цифровой компьютер. В 1949 EDSAC, который был вдохновлен первым проектом, использовали два дополнения представления двоичных чисел.
Многие компьютеры, в том числе CDC 6600, в линк, у PDP-1, и UNIVAC 1107, обозначения, использовать их дополнять; потомки в UNIVAC 1107, которая в UNIVAC 1100/2200 серии, продолжают это делать. В IBM 700/7000 научно станки серии использовать знак/обозначение величины, за исключением индексных регистров, которые два дополнения. Компьютеры дополняют коммерческое два включают в себя цифровой корпорации оборудования ПДП-5 и ПДП 1963-6. Система/360, появившиеся в 1964 году фирмой IBM, то доминирующим игроком в компьютерной индустрии, сделал два дополнения наиболее широко используется двоичное представление в компьютерной индустрии. Первый миникомпьютер, у PDP-8 была введена в 1965 году, использует суммы. как вообще 1969г Нова, 1970 года для PDP-11, и почти все последующие миникомпьютеры и микрокомпьютеры.
Срок два дополнения может означать либо числовой формат или математического оператора. Например, 0111 представляет десятичное число 7 в нотации, но два дополнения из 7 в 4-разрядный регистр на самом деле "1001" битовую строку (так же, как представляет 9 = 2 − 7 в беззнакового арифметика), который два дополнения представления о -7. Заявление "преобразовать х в дополнительном коде" может быть неоднозначным, поскольку он мог бы описать как процесс представления х в нотации, не изменяя ее величины, либо расчет суммы, которая является арифметической минус Х , если два дополнения представления используется.
Два дополнения системы счисления кодирование положительных и отрицательных чисел в двоичное представление числа. Вес каждого разряда является степенью двух, за исключением старшего разряда, вес которого составляет отрицательную соответствующей степени двойки.
Значение ш из П-разрядное целое число