Курсовая работа по курсу

advertisement
Ф ЕДЕР АЛЬ Н ОЕ
АГЕНТСТВО П О ОБ Р АЗОВ АНИ Ю
М ОСКОВСКИЙ
АВИАЦИОННЫЙ ИНСТИТУТ
(государственный технический университет)
Кафедра 304
(вычислительные машины, системы и сети)
Курсовая работа по курсу
«Организация ЭВМ и систем»
Отчёт по работе
№4 .
Разработка алгоритма и микропрограммы
(наименование работы)
выполнения операций сложения и вычитания
Вариант задания
№2 .
Курсовую работу выполнил:
студент гр.13-401 Медведев Алексей Анатольевич
(должность)
(Ф. И. О.)
.
(подпись)
Курсовую работу принял:
Мурсенков Павел Александрович
(Ф. И. О.)
.
(подпись)
«____» ________________ 2010 г.
(дата приёма)
Оглавление
Задание ............................................................................................................. 3
Теория ............................................................................................................... 4
Словесное описание алгоритма ...................................................................... 5
Структурная схема АЛУ .................................................................................... 6
Блок-схема алгоритма ...................................................................................... 7
Микропрограмма ............................................................................................. 8
Граф переходов микропрограммы.................................................................. 9
Среднее время выполнения микропрограммы ............................................. 9
Список литературы ........................................................................................... 10
2
Задание
Разработать операционное устройство, выполняющее операции сложения
и вычитания.
Дополнительные требования:
1. Отрицательные числа представить в модифицированном
дополнительном коде
2. 16-ти разрядные числа
3. Дробная арифметика
3
Теория
В современных ЭВМ используются два варианта представления чисел с
фиксированной запятой: а) все числа по модулю меньше 1 – запятая
фиксирована перед старшим разрядом дроби, б) все числа целые – запятая
фиксирована после младшего разряда числа.
Обычно в АЛУ операция алгебраического сложения сводится к
алгебраическому сложению кодов чисел путем применения инверсных
кодов – дополнительного или обратного для представления отрицательных
чисел. Обратный код имеет два представления нуля, что затрудняет анализ
результата операции поэтому чаще используют дополнительный код.
Алгоритмы выполнения в АЛУ арифметических операций зависят от
того, хранятся ли в памяти ЭВМ отрицательные числа в прямом или
дополнительном (обратном) коде. В последнем случае сокращается время
выполнения операции за счет исключения операции преобразования
получаемого в АЛУ дополнительного (обратного) кода отрицательного
результата в прямой код.
При выполнении операции сложения положительные слагаемые
представляются в прямом, а отрицательные – в дополнительном коде и
производится сложение двоичных кодов, включая разряды знаков.
Операция алгебраического вычитания может быть сведена к
изменению знака вычитаемого числа и операции сложения. Изменению
знака соответствует следующая операция: приняты в регистр Рг.2 код числа
передается инверсно на Рг.В и при сложении осуществляется
подсуммирование 1 в младший разряд сумматора.
Для получения признака переполнения разрядной сетки применяется
модифицированный прямой, дополнительный и обратный коды. Для
представления знака в этих кодах используют два разряда. При этом знак
плюс обозначается 00, а знак минус – 11.
При алгебраическом сложении на переполнение разрядной сетки
указывает несовпадение цифр в знаковых разрядах. Комбинации 01 в
знаковых разрядах соответствует положительное переполнение, а
комбинации 10 – отрицательное переполнение.
4
Словесное описание алгоритма
1. Определить какую операцию следует выполнять.
2. Если сложение, то оставляем числа без изменений, а если вычитание –
берется инверсия вычитаемого числа и при сложении осуществляется
подсуммирование 1.
3. Осуществляется сложение двух кодов.
4. Если в знаковых разрядах будут разные цифры, то устанавливается
флаг переполнения.
5
Структурная схема АЛУ
ШИВх
Y1
Y2
0
f
Рг. 2
15
Y3
Рг. A
0
Y4
0
15
Рг. B
15
Y5
0
15
0
15
Тр. Уст. 0
C0 Уст. 1
См
0
15
Y7
0
1
2 3
. . . . . . . . 15
+
1
0
Рг.См
Y6
15
0 1
&
Y8
1
OVR
ШИВых
6
Блок-схема алгоритма
Начало
Y2
Рг. А := ШИВх
МК1
Y1
Рг. 2 := ШИВх
нет
f = 0?
МК2
Y3
Y5
да
f
f
Рг. B := Рг. 2
Тр. C0 = 0
МК3
Y7
Y4
Y6
Рг. B := Инв( Рг.2 )
Тр. C0 = 1
МК6
Рг.См := См
МК4
Y8
ШИВых := Рг.См
Конец
МК5
7
Микропрограмма
МК1:
Y2
Рг. А := ШИВх
МК2:
Y1
Рг. 2 := ШИВх
Идти к МК6, если f = 1
МК3:
Y3
Y5
Рг. B := Рг. 2
Тр. C0 := 0
МК4:
Y7
Рг. См := См
МК5:
Y8
ШИВых := Рг. См
Конец
МК6:
Y3
Y5
Рг. B := Инв( Рг. 2 )
Тр. C0 := 1
Идти к МК4
8
Граф переходов микропрограммы
1
МК1
МК2
1-p1
p1
МК3
МК6
1
1
МК5
МК4
1
Среднее время выполнения микропрограммы
по теории вероятности
𝑇МП = 𝜏МК1 + 𝜏МК2 + 𝑝1 ∙ 𝜏МК6 + (1 − 𝑝1 ) ∙ 𝜏МК3 + 𝜏МК4 + 𝜏МК5
Пусть 𝑝1 = 0,5, а 𝜏МК = 𝜏. Тогда:
𝑻МП = 4 𝜏 + 0,5 𝜏 + 0,5 𝜏 = 𝟓 𝝉
9
Список литературы
1. Каган Б.М. Электронные вычислительные машины и системы. – М.:
Энергия, 1979.
2. Савельев А. Я. Прикладная теория цифровых автоматов. – М.: Высшая
школа
10
Download