15.10. Сложение и вычитание чисел, представленных в дополнительном коде
До сих пор сложение и вычитание производилось над положительными числами. Однако микропроцессоры должны обрабатывать не только положительные, но и отрицательные числа. Используя дополнительный код числа, можно задать как знак числа, так и его абсолютную величину.
Рассмотрим 4 – разрядный дополнительный код. Старший разряд отводится под знак числа: 0 – соответствует положительному числу, 1 – отрицательному. Три разряда отводятся абсолютной величине числа. В табл. 15.7 приведен 4 – разрядный дополнительный код чисел от +7 до –8.
Таблица 15.7. Представление двоичных чисел со знаком.
Из табл. 15.7 видно, что дополнительный код положительных чисел совпадает с обычным представлением двоичного числа. Для получения дополнительного кода отрицательного числа нужно сначала сформировать дополнение этого числа до 1, а затем прибавить 1. На рис. 15.23 показана процедура получения дополнительного кода отрицательного числа.
Рис. 15.23. Пример преобразования числа со знаком в дополнительный код
Эта процедура состоит из трех шагов:
1) десятичное число преобразуется к его двоичному эквиваленту соответствующего положительного числа;
2) находится дополнение полученного двоичного числа до 1, путем замены всех единиц на нули и всех нулей на единицы;
3) к полученному дополнению до 1 прибавляется 1. В результате сложения получаем дополнительный код числа.
Процедура перехода от дополнительного кода к двоичному числу, по которому затем определяется десятичное число, показано на рис. 15.24. Обратное преобразование выполняется следующим образом:
1) находим дополнение до 1 для исходного дополнительного кода, путем замены всех единиц на нули и всех нулей на единицы;
к полученному дополнению до 1 прибавляется 1 путем двоичного сложения. В результате получаем искомое двоичное число, но поскольку в старшем разряде дополнительного кода стоит 1, соответствующее десятичное число является отрицательным.
Рис. 15.24. Пример преобразования дополнительного кода в двоичное число
Рассмотрим примеры на сложение и вычитание чисел, представленных в дополнительном коде (рис. 15.25).
Рис. 15.25. Примеры сложения и вычитания чисел в дополнительном коде
Из рис. 15.25 можно сделать выводы, что сложение чисел, представленных в дополнительном коде, осуществляется обычным способом, за исключением случая, когда в результате получается 5 – разрядная комбинация. В этом случае самый старший разряд отбрасывается и остается дополнительный код суммы.
При вычитании, вычитаемое представляется в дополнительном коде. Далее образуется дополнение до 2 полученного дополнительного кода. При получении 5 – разрядной комбинации самый старший разряд отбрасывается.
Сложение и вычитание чисел, представленных в дополнительном коде, можно осуществить с использованием сумматоров.
Рассмотрим схему 3-разрядного сумматора – вычитателя, работающего с числами, представленными в дополнительном коде (рис. 15.26).
Рис. 15.26. Структурная схема 3-разрядного сумматора – вычитателя чисел в дополнительном коде
Для сложения и вычитания двух чисел, представленных в 3-разрядном дополнительном коде, используется три полных сумматора. Для задания режима работы устройства на входе В каждого сумматора введем элемент исключающее ИЛИ. При подаче логического 0 устройство складывает двоичные комбинации и . На выходе отображается дополнительный код сумы. При этом уровень логического 0 поступает на вход полного сумматора разряда единиц, т. е. этот сумматор работает как обычный двоичный сумматор.
Для выполнения операции вычитания чисел, представленных в дополнительном коде, на управляющем входе задания режима устанавливается уровень логической 1. В этом случае элементы исключающее ИЛИ инвертируют информационные сигналы, поступающие на входы В. На входе полного сумматора разряда единиц устанавливается высокий уровень сигнала. Инвертирование информационных сигналов элементами исключающее ИЛИ с прибавлением 1 на входе сумматора единиц соответствует дополнению до 1 дополнительного кода вычитаемого и последующему сложению с 1 младшего разряда. Это эквивалентно дополнению до 2 дополнительного кода вычитаемого . В результате этих действий на выходе отображается дополнительный код разности.
м. Задание к курсовой работе Номер зачетной книжки, остаток от деления его на 150 равен 40, это номер варианта. Он соответствует заданию 1 “Разработать арифметическое устройство, выполняющее операцию сложения с накоплением суммы. Числа в параллельном коде приходят на вход устройства и сопровождаются синхросигналом низкого уровня. Числа представлены в обратном коде с шириной числовых ...
... чертеж или схема выполняются в САПР AutoCAD, поэтому наиболее часто используемой вспомогательной программой является конвертор из формата P-CAD в AutoCAD. 1. Основы математического аппарата анализа и синтеза комбинационных логических устройств Все устройства, оперирующие с двоичной информацией, подразделяются на два класса: - комбинационные (дискретные автоматы без памяти). - ...
... от своей разрешающей способности. Существуют три вида мониторов: жидко-кристалические, плазменные плоские и на основе электронно-лучевой трубки. МАТЕРИНСКИЕ ПЛАТЫ. Материнская плата является одним из главных устройств компьютера на ней устанавливаются микросхемы процессора, память и микросхемы других устройств. ЖЕСТКИЙ ДИСК. Очень важный параметр – объём жесткого диска. Бывают от ...
... старшие и младшие разряды произведения. Знак произведения определяется суммированием по mod2 знако- вых разрядов сомножителей. В ы п о л н е н и е л а б о р а т о р н о й р а б о т ы Структура АЛУ для умножения чисел с фиксированной запятой и алгоритм его функционирования моделируется с помощью программы, реализованной на языке Турбо-Паскаль-7. Работа с ...
0 комментариев