Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Алгоритмы типов ПД или ПО




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

1) Числа в памяти хранятся в прямых кодах.

2) Вычисления выполняются над модулями чисел.

3) Действия над модулями определяются в соответствии с табл. 1.1.

4)Если DM:=0, то êSê= êАê+êВê, далее проверяется наличие переполнения разрядной сетки сумматора, в противном случае

ЗНS=ЗНА и переход к п. 9), иначе

5) DM=1 и выполняется сложение модулей в дополнительном (обратном) кодах, вычисляется псевдосумма S* = ïAï + [-çBç]д.

6) Анализируется значение переноса P0 из старшего разряда сумматора. Если P0=1, то результат положителен, S* =ïSï и ЗНS=ЗНА,переход к п. 9), иначе

7) P0=0 и, значит, результат суммирования отрицателен, т.е. модуль суммы получился в дополнительном (или обратном) коде S*=[- êS ê]д, ЗНS=ЗНВ.

8) Следует преобразовать дополнительный (или обратный) код модуля суммы в прямой код.

9) Запись [S]п в память.

Выполним в соответствии с алгоритмом ПД пример алгебраического вычитания для двоичных чисел в форме с фиксированной запятой.

- Имеется два числа А≠0 В≠0 êА ê< 1 ïВï< 1

Вычислить S=A-B; A= -.011011, В = -.110011;

1) Числа из памяти принимаются в АЛУ в прямом коде

[A]п = 1.011011 [B]п = 1.110011

2) Определим действия над модулями DМ, пользуясь формулой (3.1).

Так как D:=1 ЗНA:=1 ЗНB: =1, то DM: =1.

3) Вычитание модулей заменяем сложением в дополнительном коде.

Находим [-êBê]д = [-êBê]о =. 0 0 1 1 0 0

+. 0 0 0 0 0 1

. 0 0 1 1 0 1

Далее вычисляем псевдосумму S* = êAêп + [-êBê]д

S* =.0 1 1 0 1 1

+ .0 0 1 1 0 1

.1 0 1 0 0 0

4) Как видим, P0 = 0, следовательно, S* < 0 и S*= [- êSê]д

5) Найдем прямой код модуля суммы по формуле

êS êп = [ S* ] д = [S*]о =.0 1 0 1 1 1

+ .0 0 0 0 0 1

êS êп =.0 1 1 0 0 0

6) Далее определим логическим путем по формуле (3.2) знак результата.

Так как P0 = 0, то êА ê< êВ ê,, DM: = 1, ЗНА = 1. Следовательно

ЗНS: = 0

Сумма в прямом коде [S] п = 0.011000; S =.011000

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

Имеют место отличия в п 5, где при DM:= 1 вычитание выполняется не в дополнительном, а в обратном коде, а также в п. 8 при переходе к представлению отрицательного результата из обратного кода в прямой код.

Оценим кратко основные характеристики алгоритма ПД.

К достоинствам можно отнести хранение чисел в памяти в прямых кодах, благодаря чему отсутствует преобразование кодов при вводе и выводе чисел из ЭВМ. Кроме того, выполнение операции вычитание в дополнительном коде позволяет в АЛУ обойтись одним сумматором, что уменьшает оборудование по сравнению с алгоритмом ПП. Недостатком является необходимость преобразования отрицательного результата из дополнительного кода в прямой перед записью в память, что снижает быстродействие.




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 551; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.