Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2005_podyak / кафедра 14.doc
Скачиваний:
28
Добавлен:
27.03.2015
Размер:
213.5 Кб
Скачать

2.2.2 Элементы двоичной арифметики

В основе числовой обработки цифровой информации, осуществляемой цифровыми устройствами, лежат простые арифметические действия: сложение, вычитание, умножение, деление. Причем последние также реализуются с помощью сложения и вычитания. Правила, по которым выполняются арифметичеcкие действия над одноразрядными двоичными числами, состоят в следующем:

Таблица 2

Сложение

Вычитание

Умножение

0+0=0

0-0=0

00=0

1+0=1

1-0=1

10=0

0+1=1

1-1=0

01=0

1+1=10

10-1=1

11=1

Сложение и вычитание двух многоразрядных двоичных чисел производится поразрядно и учитывает единицы переполнения при сложении от предыдущих разрядов и единицы заема от старших разрядов при вычитании, как это иллюстрируется примерами:

Умножение и деление многоразрядных чисел производится, как и в десятичной арифметике, путем мннгоразового сложения промежуточных сумм и сдвигов (при умножении) и многоразового вычитания (при делении); то есть, с помощью сложения и вычитания можно реализовать и другие арифметические действия. Более того, путем использования специально построенных кодов двоичных чисел оказывается возможным вычитание заменить операцией суммирования и тем самым упростить решение схемотехнических задач. Эти коды носят название прямого, обратного и дополнительного. Прямой код дает изображение числа с учетом знака. При этом старшему разряду отводится роль знакового, и он отделяется от основной части числа запятой. Положительным числам присваивается нуль в старшем разряде, отрицательным- единица Пример: 0, 101- положительное число 5; 1, 1010- отрицательное число 10.

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

Правила составления дополнительного и обратного кодов состоят в следующем:

1. Дополнительный и обратный коды положительного числа совпадают с его прямым кодом

2. Дополнительный код отрицательного числа создается путем единичного значения знакового разряда, инвертирования всех остальных цифровых разрядов и добавления “1” к младшему разряду.

3. Обратный код аналогичен дополнительному без добавления единицы к младшему разряду.

Прямой код получается по тем же правилам из дополнительного и обратного.

Изложенные выше процедуры образования кодов иллюстрируются приведенными в таблице 3 результатами

Таблица 3

Число

Прямой код

Обратный код

Дополнительный код

X1= 0,11001

X1= 0,11001

X1ОБ= 0,11001

X1ДОП= 0,11001

X2=- 0,01100

X2= 1,01100

X2ОБ= 1,10011

X2ДОП= 1,10100

Чтобы сложить числа в обратном коде, надо значащие разряды сложить как разряды целых чисел; единица переполнения, получаемая в знаковом разряде, прибавляется к младшему разряду (это действие носит название циклического переноса). Приведем пример сложения ( точнее вычитания) двух двоичных чисел X1, X2, представленных в таблице 4, на основе обратного кода:

Легко убедиться, что полученное двоичное число, полученное по выше приведенному правилу, равняется 25-12=13.

Сложение чисел в дополнительном коде осуществляется следующим образом:

Значащие разряды складываются поразрядно, знаковые разряды- как разряды целых чисел, а единица переполнения в знаковом разряде не учитывается. Если при этом знаковый разряд равен нулю, то результат суммирования- положительное число. Единице в знаковом разряде соответствует отрицательное число, представленное в обратном или в дополнительном коде, который при необходимости можно обратить в прямой код.

Найдем, например, разность чисел X1+X2, положив: X1=-2510=1,11001ПР=1,00111ДП; X2=1210=0,01100ПР=0,01100ДП. Применяя правила сложения чисел в дополнительном, получим:

Так как в знаковом разряде присутствует “1”, то результатом сложения является отрицательное число, записанное в дополнительно коде. Чтобы перевести его в прямой код, сначала проводим инвертирование, а затем прибавляем в младший разряд единицу. Итог этих действий запишется в виде:X1+X2=1,01101ПР=-13.

В заключение заметим, что суммирование чисел с одинаковыми значениями знаковых разрядов проводится по правилам суммирования двоичных чисел с присвоением общего для них знака числа.

Соседние файлы в папке 2005_podyak