Операционный автомат и микропрограмма для умножения чисел с фиксированной запятой в прямом коде. — КиберПедия 

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Операционный автомат и микропрограмма для умножения чисел с фиксированной запятой в прямом коде.

2020-12-06 304
Операционный автомат и микропрограмма для умножения чисел с фиксированной запятой в прямом коде. 0.00 из 5.00 0 оценок
Заказать работу

 

Пусть необходимо построить операционное устройство для выполнения умножения чисел, представленных в форме с фиксированной запятой. Исходные операнды поступают на вход устройства последовательно за два такта по шине DI(0:7) в следующем формате:

 

 


Результат должен быть выдан на шину DO(0:7) в таком же формате и сопровождаться выдачей сигнала Ready.

Тогда структурная схема ОУ будет иметь вид.

 

 

 

 

 


Напишем микропрограмму и построим операционный автомат умножения чисел с фиксированной запятой.

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

1. Принять операнды по входной шине на регистры А и В.

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

3. Провести анализ на равенство нулю каждого из сомножителей. Если хотя бы один из сомножителей равен нулю, то перейти к п.10.

4. Провести анализ младшего разряда множителя. Если младший разряд множителя равен 0, то перейти к п.6.

5. Выполнить сложение суммы промежуточных произведений и множимого.

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

7. Если содержимое счетчика циклов не рано 0, перейти к п.4.

8. При необходимости произвести округление.

9. Произведению присвоить знак плюс, если знаки сомножителей одинаковы, и знак минус, если знаки сомножителей разные.

10. Выдать результат на выходную шину, сопровождая выдачу сигналом Ready/

11. Конец.

 

Микропрограмма выполнения операции умножения чисел, представленных в форме с фиксированной точкой в прямом коде приведена ниже.

 

 

 


Микропрограмма содержит исходные данные для построения ОУ. На ее основе можно построить операционный и управляющий автоматы, а, следовательно, и все операционное устройство в целом.

Для построения управляющего автомата строится кодированная ГСА и синтез УА проводится одним из ранее рассмотренных методов.

Для построения ОА используются следующие списки:

4. Список слов и их типов, которые были использованы при написании микропрограммы (ее описательная часть). Он имеет следующий вид.

– РгА(0:7) – внутреннее слово с памятью;

– РгВ(0:7) – внутреннее слово с памятью;

– РгС(0:7) – внутреннее слово с памятью;

– Cnt(0:2) – внутреннее слово с памятью;

– DI(0:7) – входное слово без памяти;

– Ready – выходное слово без памяти;

– DO(0:7) – выходное слово без памяти.

5. Список микроопераций.

– y1: РгА:= DI;

– y2: РгС:= 0

– y3: РгB:= DI;

– y4: Cnt:= 0

– y5: РгС:= РгС + РгА(1:7);

– y6: Cnt:=Cnt+1

– y7: РгС:= R1(0.РгC);

– y8: РгB(1:7):= R1(РгC(7).РгB(1:7));

– y9: РгС:= РгС + 1

– y10: РгС(0):= 1;

– y11: DO:= РгС;

– y12: Ready:= 1.

 

6. Список логических условий.

– x1 = РгА(1:7)=0;

– x2 = РгB(1:7)=0;

– x3 = РгB(7);

– x4 = Cnt =7;

– x5 = РгВ(1);

– x6 = РгА(0)ÅРгВ(0)

 

Структурная схема ОА будет иметь следующий вид.

 

 

Умножение чисел, представленных в форме с фиксированной запятой в дополнительных кодах

 

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

 

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

 

1. Исходное значение суммы частичных произведений принимается равным нулю.

2. Если анализируемая цифра множителя равна 1, то к сумме частичных произведений прибавляется множимое в том коде, в котором оно представлено; если эта цифра равна 0, прибавление не производится.

3. Сумма частичных произведений сдвигается на один разряд вправо, при этом, если сумма отрицательна, осуществляется модифицированный сдвиг.

4. П.п. 2 и 3 последовательно выполняются для всех цифровых разрядов множителя, начиная с младшего.

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

Прибавление производится с выравниванием складываемых чисел по старшим разрядам.

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


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

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

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

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...



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

0.012 с.