Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
4.2. УМНОЖЕНИЕ, ВЫПОЛНЯЕМОЕ МЕТОДОМ НАКОПЛЕНИЯ ЧАСТИЧНЫХ ПРОИЗВЕДЕНИЙОперация умножения в современных ЭВМ чаще всего выполняется суммированием сдвинутых на один или несколько разрядов частичных произведений, каждое из которых является результатом умножения множимого на соответствующий разряд (разряды) множителя. При точном умножении двух чисел количество значащих цифр произведения может в пределе достичь двойного количества значащих цифр сомножителей. Еще сложнее возникает ситуация при умножении нескольких чисел. Поэтому в произведении только в отдельных случаях используют двойное количество разрядов, обычно же ограничиваются количеством разрядов, которое имели сомножители. Здесь учитывается то обстоятельство, что правила приближенных вычислений рекомендуют оставлять в произведении столько же значащих цифр, сколько их содержится в наименее точном из сомножителей. Младшие разряды результата при этом отбрасываются, а старшие обычно округляются по известным правилам с тем, чтобы ошибка произведения стала знакопеременной и ее математическое ожидание было равно 0 с учетом равновероятности любых значений отброшенных младших разрядов. Наиболее просто операция умножения в ЭВМ выполняется в прямом коде. При этом на первом этапе определяется знак произведения путем сложения знаковых цифр сомножителей по модулю 2. Затем производится перемножение модулей сомножителей по правилам арифметики согласно двоичной таблице умножения. Результату присваивается полученный знак. Так как умножение производится в двоичной системе счисления» частные произведения либо равны 0 (при умножении на 0), либо самому сомножителю (при умножении на 1), сдвинутому на соответствующее количество разрядов. Пример. Заданы
Процессом накопления суммы частных произведений можно управлять с помощью цифр множителя в соответствии с выражением
где С — искомое произведение; А — множимое; В — множитель. Управление процессом умножения может начинаться как с младших разрядов множителя, так и со старших. При этом полную сумму (произведение) можно получить двумя путями: 1) сдвигом множимого на требуемое количество разрядов и добавлением полученного очередного частного произведения ранее накопленной сумме; 2) сдвигом суммы ранее полученных частных произведений на каждом шаге на один разряд и последующим добавлением к сдвинутой сумме неподвижного множимого либо 0. Основываясь на вышеизложенном можно создать четыре варианта схем машинного умножения: I) умножение младшими разрядами множителя со сдвигом накапливаемой суммы вправо; 2) умножение младшими разрядами множителя со сдвигом множимого влево; 3) умножение старшими разрядами множителя со сдвигом суммы частичных произведений влево; 4) умножение старшими разрядами множителя со сдвигом множимого вправо. Рассмотрим более детально каждую из четырех схем умножения. Умножение младшими разрядами множителя со сдвигом суммы частичных произведений вправо. Выражение (4.5) можно представить в виде схемы Горнера для вычисления полиномов.
которое может быть сведено к
при начальных значениях В каждом цикле множимое либо добавляется к сумме частичных произведений (если
Очередную цифру множителя, управляющую суммированием частичных произведений, удобнее всего снимать с младшего разряда регистра множителя, в котором в каждом цикле производится сдвиг содержимого на один разряд вправо. Реализация данного способа требует Если дополнительные разряды СМ исключить, то произведение будет вычисляться с тем же количеством разрядов, что и сомножители. Однако для округления результата желательно удлинить СМ на один дополнительный разряд, чтобы после вычисления произведения прибавить к дополнительному разряду единицу и вывести из СМ результат без дополнительного разряда. Количество разрядов СМ может быть уменьшено вдвое также при вычислении полноразрядного произведения, если вместо
Рис. 4.1
Рис. 4.2 использовать освобождающиеся разряды регистра множителя, соединив при этом младший разряд СМ со старшим разрядом регистра множителя и объединив их в общий сдвиговый регистр. Пример. Заданы Исходное состояние сумматора — нуль.
Здесь сумматор содержит вспомогательный разряд переполнений, отделенный от остальных сплошной линией, в качестве которого можно использовать знаковый разряд сумматора. 2. Умножение младшими разрядами множителя со сдвигом множимого влево. Представим выражение (4.5) в виде
Вычисление выражения (4.7) сводится к
где
В каждом цикле умножения множимое сдвигается на один разряд влево и либо передается в СМ (при Для реализации данного способа умножения требуется поразрядный сдвигающий регистр множителя, Пример.
Знаковый разряд отделен сплошной вертикальной чертой. Для большей наглядности старшие разряды 3. Умножение старшими разрядами множителя со сдвигом суммы частичных произведений влево. Если преобразовать выражение (4.5) к виду
то умножение двух чисел А и В сводится к
с начальными значениями Таким образом, для реализации данной схемы необходимы: сдвигающий влево регистр множителя с
Рис. 4.3
Рис. 4.4 Сдвигать старшие разряды суммы частичных произведений можно в освобождающиеся разряды регистра множителя. Однако в этом случае к нему необходимо добавить цепи распространения переноса. Пример. Заданы
4. Умножение старшими разрядами множителя со сдвигом множимого вправо. Если представить (4.5) в виде
то вычисление произведения может быть сведено к
при начальных условиях Таким образом, в каждом цикле множимое сдвигается на один разряд вправо и в зависимости от значения управляющего (старшего) разряда множителя либо передается в С учетом этого для реализации данной схемы умножения необходим поразрядный регистр множителя со сдвигом влево, Если потребовать, чтобы ошибки произведения не превышали единицы младшего разряда, то можно значительно сократить количество дополнительных разрядов регистра множимого и сумматора. При 1. В каждом цикле передачи множимого в СМ после
2. После окончания умножения отбрасываются все
Если потребовать, чтобы
можно определить количество дополнительных разрядов
Обе составляющие ошибки имеют отрицательный знак. Округление первой составляющей ошибки можно выполнять путем прибавления 1 к Пример. Заданы
Первое частное произведение формируется как множимое, сдвинутое на один разряд вправо.
|
1 |
Оглавление
|