Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ргр алгоритмы

.docx
Скачиваний:
174
Добавлен:
15.06.2014
Размер:
375.68 Кб
Скачать

Государственное образовательное учреждение

высшего профессионального образования

«Омский государственный технический университет»

Кафедра «Автоматизированные системы обработки информации и управления»

КУРСОВОЙ ПРОЕКТ

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

по дисциплине «Арифметические и логические основы вычислительных систем»

студента Юрдановой Кристины Сергеевны группы АС-111

Старший преподаватель_____________________________________И. В. Червенчук

подпись, дата

Студент____________________________________________________К. С. Юрданова

подпись, дата

Омск 2012

Содержание

Введение...............................................................................................................................3

1 Пример выполнения операции........................................................................................4

2 Построение алгоритма выполнения операции...............................................................5

Заключение...........................................................................................................................8

Введение

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

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

1 Пример выполнения операции

1) А*В=?

А=0,10101110; В=0,10110101; В>0;

R1=0,10101110; R2=0,10110101.

1.

∑= ∑+R2

∑= 0,01010111

R1()=1,01101010

R2()=0,01010111

2.

∑= ∑+0

∑=0,01010111

R1()=0,11010100

R2()=0,00101011

3.

∑= ∑+R2

∑=0,01101000

R1()=1,10101000

R2()=0,00010101

4.

∑= ∑+R2

∑=0,01110010

R1()=1,01010000

R2()=0,00001010

5.

∑= ∑+0

∑=0,1110010

R1()=0,10100000

R2()=0,00000101

6.

∑= ∑+R2

∑=0,01110100

R1()=1,01000000

R2()=0,00000010

7.

∑= ∑+0

∑=0,01110100

R1()=0,10000000

R2()=0,00000001

8.

∑= ∑+R2

=0,01110100 – Ответ.

R1()=1,00000000

R2()=0,00000000

2 Построение алгоритма выполнения операции

Шаг 1. Произведение положить равным нулю, загрузить операнды.

Шаг 2. Проверка регистра мантиссы, не должны быть меньше нуля. Если они меньше, то выводим ответ.

Шаг 3. Сдвиг влево множимого на один разряд.

Шаг 4. Сдвиг вправо множителя на один разряд.

Шаг 5. Проверка: если все ли разряды мантиссы операнда B обработаны, то перейти к шагу 5, если нет, то – к шагу 2.

Шаг 6. Работа с порядками.

Шаг 7. Нормализация ответа.

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

Схема алгоритма изображена на рисунке 1.

Схема устройства изображена на рисунке 2.

Рисунок 1 - Алгоритм выполнения операции.

Рисунок 2 - Схема устройства.

Заключение

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

Список использованных источников

1) Потапов В.И., Шафеева О.П. Компьютерная арифметика и алгоритмическое моделирование арифметических операций: Учеб. пособие. Омск: Изд-во ОмГТУ, 2005.

9