Содержание
Дополнение до 2 - это система для представления отрицательных двоичных чисел. Его также можно использовать для выполнения вычитания - вычесть «A» из «B», преобразовать «A» в отрицательное число и сложить; это позволяет избежать создания оборудования для сложения и вычитания. С помощью системы преобразования двоичного числа в дополнение до 2 - и наоборот - можно упростить представление отрицательного числа и произвести вычитание. Преобразование дополнения 2 к десятичному основному числу требует двух шагов: сначала преобразование в двоичное, а затем из двоичного в десятичное.
Шаг 1
Представляйте десятичные числа как двоичные числа непрерывно, разделив их на 2 в ряду и сохранив остатки. Например, чтобы преобразовать 13 в двоичное, разделите 13 на 2, чтобы получить 6, а первый остаток равен 1. Разделите на 6 на 2, чтобы получить 3, а второй остаток равен 0. Разделите на 3 на 2, чтобы получить 1 и третий остаток, равный 1. Разделите 1 на 2, чтобы получить 0, а остаток - 1. Остаток в обратном порядке получения равен 1101, а десятичное базовое число 13 = двоичное 1101. Двоичное число распознать легче, чем я произвел. Это. Справа добавьте d X 2 ^ p, где «d» - это двоичная цифра, а «p» - позиция, так что 1101 = (1 X 1) + (0 x 2) + (1 x 4) + (1 х 8) = 13.
Шаг 2
Преобразование из двоичного кода в дополнение до двух, инвертирование битов и добавление 1. Тогда двоичное значение 7 будет 00000111, а отрицательное 7 будет 11111001, потому что 00000111 с инвертированными битами равно 11111000 и 11111000 + 1 = 11111001. Самая левая цифра - это цифра. сигнал. Положительные числа имеют знаковый бит ноль, а отрицательные числа имеют знаковый бит 1. Одно из преимуществ дополнения до 2 состоит в том, что его преобразование в двоичное происходит точно таким же процессом преобразования из двоичного в дополнение. из двух. Например, чтобы преобразовать двоичное дополнение из -7 в двоичное значение 7, переверните цифры и добавьте 1. 11111001 в инвертированном виде равно 00000110 и 00000110 + 1 = 00000111.
Шаг 3
Преобразуйте дополнение 2 в десятичное число за два шага: дополнение 2 в двоичное и после двоичного в десятичное. Например, чтобы преобразовать -21 в дополнение к 2 - 11101011 - в десятичное, сначала преобразовать в двоичное, а затем преобразовать двоичное в десятичное. Инвертируйте 11101011, чтобы получить 00010100, и добавьте 1, чтобы получить 00010101, что равно 21 в двоичном формате. Затем декодируйте двоичный файл, используя позиционную нотацию, чтобы получить (0 X 128) + (0 X 64) + (0 X 32) + (1 X 16) + (0 X 8) + (1 X 4) + (0 X 2) + (1 х 1) = 21.