Алгоритм деления с восстановлением остатка. — КиберПедия 

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Алгоритм деления с восстановлением остатка.

2020-12-06 352
Алгоритм деления с восстановлением остатка. 0.00 из 5.00 0 оценок
Заказать работу

Если деление условно считать некоторым исходным (предыдущим) сдвинутым на один разряд влево остатком, то правило машинного деления двух дробных положительных чисел можно сформулировать так:

 

Предыдущий остаток сдвигается влево на один разряд и из него вычитается делитель, в результате чего формируется текущий остаток; цифра, взаимообратная знаковой цифре текущего остаток, записывается в соответствующий разряд частного; если текущий положителен, то он становится предыдущим остатком для следующего шага, а данный шаг на этом заканчивается; если же текущий остаток отрицателен, то к нему прибавляется делитель для восстановления предыдущего, сдвинутого влево остатка, который становится предыдущим остатком для следующего шага. Операции сдвига, вычитания, а в случае необходимости и восстановления повторяются до тех пор, пока в частном не получится требуемое количество значащих цифр. После этого производится округление частного. Обычно в частном формируется n+1 значащая цифра, после чего к (n+1) цифре добавляется 1 для округления частного до n цифр. Знак частного определяется суммой по mod 2 знаковых разрядов.

 

Основные способа деления с восстановлением остатков:

 

1)  ацикличность процесса деления обусловленная нерегулярностью появления микрооперации восстановления остатков, что приводит к усложнению устройства управления делением

2)  относительно малая скорость деления, так как в среднем только половина шагов будет состоять из двух микроопераций (вычитания и сдвига), а в другие шаги будут входить дополнительная микрооперация сложения для восстановления остатка.

 

Попытаемся упростить операцию деления:

 Пусть - предыдущий остаток

-текущий остаток

-последующий остаток

 

Проанализируем такой шаг деления, в котором текущий остаток оказался отрицательным и приходится делать восстановление предыдущего (сдвинутого) остатка.

 Исходное условие:

 

В соответствии с правилом деления надо выполнить следующие микрооперации

1)  восстановление предыдущего (сдвинутого влево) остатка:

2)  Сдвиг восстановленного остатка влево на один разряд

3)  вычитание модуля делителя из полученной кодовой комбинации

 

Т.о. если выполняется (1), то надо как то сразу перейти от текущего остатка Ri к последующему Ri+1.

Пусть первым действием, как и на шаге без восстановления, будет выполнение микрооперации сдвига отрицательного остатка Ri влево

 

Сравнивая (2) и (3) замечаем, что они отличаются только выражением для |X2|

 

Если сумма то получим то что надо. На основе приведенного анализа можно сформулировать правило деления без восстановления остатков:

 

Чтобы определить цифру частного в некотором разряде, необходимо сдвинуть предыдущий остаток влево на один разряд, а затем алгебраически прибавить к нему модуль делителя, которому приписывается знак, противоположный знаку предыдущего остатка: если полученный текущий остаток положителен, то в частном проставляется 1, если же остаток отрицателен, то 0.

Знак частного определяется суммой mod 2 знаковых разрядов.

 

 

Деление целых чисел

 

Основная особенность деления целых чисел в прямом коде заключается в том, что делимое всегда берется 2n, а делитель n разрядным, В результате деления модулей операндов формируется (n-1) разрядная целая часть частного и n-разрядный остаток со своим знаком.

При делении возможно переполнение, если операция некорректна. Признак корректности - отрицательность первого остатка.

 

Вариант устройств деления

В настоящее время практически применяется деление по способу без восстановления остатков. В этом способе есть два варианта. При выполнении деления можно:

1)  сдвигать остаток влево, делитель неподвижен

2)  сдвигать делитель вправо, остаток неподвижен

 

Способ со сдвигом остатка влево

 

УОЦ - устр-во обращения цифр

УСЗ - устр-во схемо знака

УУД - устр-во управления делением

 

Способ со сдвигом остатка вправо

 

Основа устройств деления - сумматор и два регистра. Делимое в нулевом такте заносится в сумматор. В первом способе сумматор производит сдвиг текущего остатка влево и алгебраическое сложение его с делителем. Передача в сумматор модуля делителя (сложение) или дополнение модуля до единицы (вычитание) обеспечивается устройством управления делением, которое анализирует выталкиваемые при сдвиге из сумматора знаковые цифры остатков. Эти цифры, проходя через устройство обращения цифр (УОЦ), инвертируются (заменяются на взаимообратные) и подаются на младший разряд сдвигающего регистра частного уже как цифра частного.

 

Во втором способе одновременно с передачей цифры делителя в сумматор, осуществляется и сдвиг ее вправо. Здесь введено устройство съема знаков (УСЗ) остатков, т.к. нет выталкивания знаковых разрядов из сумматора.

 

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

 


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

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.