Лабораторная работа по информатике ( задания )

Лабораторная работа 3
ИЗУЧЕНИЕ ПРИНЦИПОВ ОРГАНИЗАЦИИ АРИФМЕТИКО-ЛОГИЧЕСКИЗ УСТ­РОЙСТВ. СТРУКТУРА АЛУ ДЛЯ УМНЛЖЕНИЯ ЧИСЕЛ С ФИКСИРОВАННОЙ ЗАПЯТОЙ
Ц е л ь р а б о т ы: Изучение принципов построения и функционирования АЛУ для умножения чисел с фиксированной запятой.
В в е д е н и е
В ЭВМ операция умножения чисел с фиксированной запятой с помощью соответствующих алгоритмов сводится к операциям сложения и сдвига. Для выпонения умножения АЛУ должно содержать регистры множимого, множителя и схемы формирования суммы частичных произ­ведений – так называемый сумматор частичных произведений, в ко­тором путем соответствующей организации передач производится по­седовательное суммирование частичных произведений.
Операция умножения состоит из n-1 [(n-1) – число цифровых разрядов множителя] циклов. В каждом цикле анализируется очеред­ная цифра множителя и если это "1", то к сумме частичных произ­ведений прибавляется множимое, в противном сучае прибавления не происходит. Цикл завершается сдвигом множимого относительно сум­мы частичных произведений ,либо сдвигом суммы частичных произве­дений относительно неподвижного множимого.
В зависимости от способа формирования суммы частичных про­изведений различают четыре основных метода выполнения умножения с соответствующими структурами АЛУ.
1.Умножение, начиная с младших разрядов множителя, со сдвигом суммы частичных произведений вправо при неподвижном мно­жимом.
2.Умножение, начиная с младших разрядов множителя, при сдвиге множимого влево и неподвижной сумме частичных произведе­ний.
3.Умножение, начиная со старших разрядов множителя, при сдвиге суммы частичных произведений влево и неподвижном множи­мом.
4.Умноженине, начиная со старших разрядов множителя, при сдвиге вправо множимого и неподвижной сумме частичных произведе­ний.
В лабораторной работе изучается наиболее распространенный метод умножения целых чисел, начиная с младших разрядов, со сдвигом суммы частичных произведений вправо. (рис.2)
А л г о р и т м
умножения чисел, представленных в прямом коде,
начиная с младших разрядов, со сдвигом суммы
частичных произведений вправо.
1.Берутся модули от сомножителей.
2.Исходное значение суммы частичных произведений принимает­ся равным 0.
3.Если анализируемая цифра множителя равна 1, то к сумме частичных произведений прибавляется множимое; если эта циф­ра равна 0, прибавление не производится.
4.Производится сдвиг суммы частичных произведений вправо на один разряд.
5.Пункты 3 и 4 последовательно выполняются для всех цифро­вых разрядов множителя, начиная с младшего.
6.Произведению присваивается знак плюс, если знаки сомножи­телей одинаковы, в противном случае – знак минус.
Особенностью умножения целых чисел является то, что резуль­тат перемножения двух n-разрядных слов представляется словом двойной длины, при этом число цифровых разрядов двойного слова 2n-1 на единицу больше числа 2n-2 цифровых разрядов, произведе­ния двух n-1 разрядных чисел. В связи с этим после получения ре­зультата в формате двойного слова необходимо дополнительно сдви­нуть его цифровые разряды на один разряд вправо, чтобы правильно расположить произведение в разрядной сетке.
В структуру АЛУ для умножения n-разрядных целых чисел вхо­дят (рис.2): входной регистр множимого Pr1, регистры множителя Pr2 и Pr2′,на которых с помощью косой передачи вправо Pr2′:=n(1)Pr2 и передачи Pr2:=Pr2′ выполняется сдвиг множителя вправо; сумматор Cm для преобразования суммы частичных произве­дений; входной и выходной регистры суммы частичных произведений; входной и выходной регистры сумматора PrA, PrB, PrCm соответс­твенно, в которых хранятся текущие значения и образуется новое значение суммы, счетчик циклов СчЦ. Работа АЛУ при умножении це­лых положительных чисел происходит следующим образом. Первона­чально на Pr1 поступает множимое, регистр PrB, хранящий сумму частичных произведений обнуляется. В счетчик циклов СчЦ заносит­ся число цифровых разрядов сомножителей. В регистр Pr2 записыва­ется множитель. На этом завершается процедура начальных устано­вок и начинается процесс вычислений.
В зависимости от значения младшего разряда 0 или 1 множите­ля к частичному произведению прибавляется либо 0, либо множимое. В первом случае PrA:=0, во втором – PrA:=Pr1. В сумматоре полу­чаем сумму PrA и PrB . Содержимое Pr2 путем косой передачи впра­во в Pr2′ и затем обратно сдвигается на один разряд вправо. Циф­ра младшего разряда суммы частичных поизведений передается в старший разряд Pr2′.
Производится сдвиг суммы частичных произведений вправо на один разряд: косая передача из сумматора в PrCm со сдвигом впра­во на один разряд, а затем передача PrB:=PrCm. Содержимое счет­чика тактов уменьшается на единицу.
Если СчЦ <> 0, то все операции повторяются.
Если СчЦ=0, то вычисления заканчиваются в регистре PrCm и Pr2′ будут хранться старшие и младшие разряды произведения.
Знак произведения определяется суммированием по mod2 знако­вых разрядов сомножителей.
В ы п о л н е н и е
л а б о р а т о р н о й р а б о т ы
Структура АЛУ для умножения чисел с фиксированной запятой и алгоритм его функционирования моделируется с помощью программы, реализованной на языке Турбо-Паскаль-7.
Работа с программой осуществляется в интерактивном режиме. После запуска программы mult.exe на экране дисплея появляется инструкция для пользователя, согласно которой и выполняется ла­бораторная работа. Текст описания работы содержится в файле …
Выполнение изучаемой операции АЛУ осуществляется по шагам и результат каждого шага отражается на экране в виде кодов содер­жимого соответсвующего регистров, промежуточных и конечных ре­зультатов. В процессе выполнения лабораторной работы необходимо зафиксировать по шагам состояние всех элементов АЛУ, индицируе­мые соответствующими кодами.
Работу АЛУ необходимо изучить для различных значений опе­рандов.
По результатам работы необходимо построить блок-схему мик­ропрограммы работы АЛУ.
С о д е р ж а н и е о т ч е т а
1.Описание работы АЛУ.
2.Блок-схема микропрграммы выполнения операций умножения для чисел с фиксированной запятой.
К о н т р о л ь н ы е в о п р о с ы
1.В введении к лабораторной работе перечислены четыре воз­можных алгоритма умножения. Дайте их сравнительный анализ.
2.Какие действия при выполнения умножения влияют на ско­рость вычислений?
3.Как можно увеличить скорость выполнения умножения?
4.Как работают матричные умножители?
5.Как выполняется умножение чисел с плавающей запятой?
6.Какое умножение требует большего времени – чисел с фикси­рованной запятой или чисел с плавающей запятой?
7.В чем различие между программной и аппаратной реализацией умножения?
Л и т е р а т у р а
1.Каган Б.М. Электронные вычислительные машины и системы.-
М.: Энергоатомиздат, 1985-552 с.
2.Нешумова К.А. Электронные вычислительные машины и системы.-М.: Высшая школа, 1989-336 с.
3.Вычислительные машины, системы и сети: Учебник под ред. проф7 А.П. Пятибратова – м.:Финансы и статистика, 1991-400 с.
4.Соловьев Г.Н. Арифметические устройства ЭВМ – М.:Энергия, 1978-176 с.
5.Чернов В.Г. Математические и логические основы вычисли­тельных машин. Методические указания к самостоятельной работе студентов.-ВПИ, 1992-47 с.
6.Перспективы развития вычислительной техники: в 11 кн.: Справ. пособие /под ред. Ю.М.Смирнова кн.3:ЭВМ общего назначе­ния/ Ю.С. Ломов и др.-М.:Высш. шк.-1989-143 с.
7.Анамия М., Танака Ю. Архитектура ЭВМ и искусственный ин­теллект: Пер. с японского -М.:Мир, 1993-400с.