Автор: Пользователь скрыл имя, 05 Декабря 2012 в 03:31, контрольная работа
Задание 1.1. Найти значений С1, С2, С3, С4, определяемые ыражениями:
С1 = А+В, С2 = А-В, С3 = В- А+, С4 =- А -В, где, согласно варианту, А=-3927, В+1184. При выполнении вычислении использовать двоично-десятичный обратный код.
Задание 1.2. Выполнить операцию сложения над числами А и В, представленными с плавающей точкой. А {ап = -2 (порядок А), ам = -0.56 (мантисса А)}; В{bп = 0 (порядок B), bм = -0.51 (мантисса B)}. Использовать двоичный дополнительный код. При выполнении задания порядки и мантиссы операндов А и В необходимо представить в двоичной системе счисления и сформировать для них прямые коды. Разрядность модуля порядка должна быть равна 3, разрядность модуля мантиссы - 6 . Результат (порядок и мантисса) должен быть представлен в прямом коде в нормализованной форме.
Задание 1.1. Найти значений С1, С2, С3, С4, определяемые ыражениями:
С1 = А+В, С2 = А-В, С3 = В- А+, С4 =- А -В, где, согласно варианту, А=-3927, В+1184. При выполнении вычислении использовать двоично-десятичный обратный код.
Решение
Представим числа A, -A, B, -B в обратном коде. Если число отрицательное в знаковый разряд минус, все остальные разряды инвертируются. Если число положительное в знаковые разряд ноль, остальные такие же, как в прямом коде.
- 3 9 2 7
[A]пк(-3927)= 1.0011 1001 0010 0111
[A]ок = 1.1100 0110 1101 1000
+ 3 9 2 7
[-A]пк(+3927)=0.0011 1001 0010 0111
[-A]ок =0.0011 1001 0010 0111
+ 1 1 8 4
[B]пк(1184)=0.0001 0001 1000 0100
[B]ок = 0.0001 0001 1000 0100
- 1 1 8 4
[-B]пк(-1184)=1.0001 0001 1000 0100
[-B]ок =1.1110 1110 0111 1011
C1=A+B=-3927+1184=-2743
*
1.1100 0110 1101 1000 [A]ок
0.0001 0001 1000 0100 [В]ок
1.1101 1000 0101 1100
0110 в тетрада где был перенос +6
1.1101 1000 1011 1100
1.0010 0111 0100 0011- [C1]пк во
всех тетрадах разрешенные комбинации,
- 2 7 4 3 - [C1]10 следовательно коррекция не требуется
C2=A-B=-3927-1184=-5111
* * * *
1.1100 0110 1101 1000 [A]ок
1.1110 1110 0111 1011 [-В]ок
11. 1011 0101 0101 0011 +1
1. 1011 0101 0101 0100
1. 0100 1010 1010 1011 преобразуем в прямой код
0110 0110 0110 если в тетраде запрещенная комбинация прибавляем 6
1. 0101 0001 0001 0001 - [C2]ПК
- 5 1 1 1 -[ C2]10
C3=-A+B=3927+1184=5111
0. 0011 1001 0010 0111 [-A]ок
0. 0001 0001 1000 0100 [-В]ок
0. 0100 1010 1010 1011
0110 0110 0110 в тетрадах с запрещенными комбинациями+6
1. 0101 0001 0001 0001[C3]ПК
- 5 1 1 1 [C3]10
C4=-A-B=3927-1184=2743
* * *
0. 0011 1001 0010 0111 [-A]ок
1.1110 1110 0111 1011 [В]ок
10. 0010 0111 1010 0010 +1
0. 0010 0111 1010 0011
1010 коррекция +6 где не было переноса
0. 0010 0111 0100 0011 - [C4]ПК
+ 2 7 4 3 - [С4]10
Задание 1.2. Выполнить операцию сложения над числами А и В, представленными с плавающей точкой. А Þ{ап = -2 (порядок А), ам = -0.56 (мантисса А)}; ВÞ{bп = 0 (порядок B), bм = -0.51 (мантисса B)}. Использовать двоичный дополнительный код. При выполнении задания порядки и мантиссы операндов А и В необходимо представить в двоичной системе счисления и сформировать для них прямые коды. Разрядность модуля порядка должна быть равна 3, разрядность модуля мантиссы - 6 . Результат (порядок и мантисса) должен быть представлен в прямом коде в нормализованной форме.
Решение.
Представим мантиссу и порядок чисел Аи В в двоичном прямом и дополнительном коде.
ап = -2 [ап]пк=1.010
[а]дк=1.110
[-а]дк=0.010
ам = - 056
Мантисса А в двоичном виде:
2|56
1|12
0|24
0|48
0|96
1|92
1|84
[aм]пк=0.100011
bп = +2 [b]пк=0.010
[b]дк=0.010
bм = -0.51
Мантисса В в двоичном виде:
2|51
1|02
0|04
0|08
0|16
0|32
0|64
[bм]пк=1.100000
Перед сложением производится выравнивание порядков. Число с меньшим порядком преобразуется в число с порядком, равным порядку другого числа(меньший порядок «приводится» к большему).
Число разрядов, на которое необходимо сдвинуть А вправо:
0.000[b]дк
+0.010 [-а]дк
0.010 2
[bм]пк=1.10000000
[bм]дк=1.10000000
[aм]пк=1. 00100011
[aм]дк=1. 11011101
Далее производится сложение, как над числами с фиксированной запятой.
1.11011101
1.10000000
11.01011101 [См]дк
1.10100011 [См*]пк
[Сп]пк=0.000
Округляем модуль мантиссы до 6 знаков См=1.101001
Результат вычисления в нормализованной форме:
Мантисса-1. 101001, порядок-0.000
Задание 2.1
Построить цифровой автомат Мили для ГСА, приведенной на рисунке 2.1, используя RS-триггер.
Рисунок 2.1.-Исходная ГСА для задания 2.1
Решение.
Формируем граф автомата Мили следующим образом:
Результат приведен на рисунке 2.2
Рисунок 2.2
Объединенной кодированной таблицы переходов и выходов цифрового автомата составляется на основе всех существующих путей из вершин графа автомата. В таблице 2.1 приведена объединенной кодированной таблицы переходов и выходов для графа автомата Мили.
Таблица 2.1
N |
Начало пути |
Конец пути |
логическое |
вых. |
Упр.памятью | |||||||
п.п. |
B(t) |
код B(t) |
B(t+1) |
код B(t+1) |
условие |
сигнал |
qS1 |
qR1 |
qS2 |
qR2 |
qS3 |
qR3 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
1 |
В1 |
001 |
В2 |
010 |
1 |
У1 ,У31 |
0 |
0 |
1 |
0 |
0 |
1 |
2 |
В2 |
010 |
В3 |
011 |
1 |
У2 ,У11 |
0 |
0 |
0 |
0 |
0 |
1 |
3 |
В3 |
011 |
В3 |
011 |
х3 |
У2. У11 |
0 |
0 |
0 |
0 |
0 |
0 |
4 |
В4 |
100 |
_ х3 |
У11. У20. У13 |
1 |
0 |
0 |
1 |
0 |
1 | ||
5 |
В4 |
100 |
В5 |
101 |
1 |
У27. У10 |
0 |
0 |
0 |
0 |
1 |
0 |
6 |
В5 |
101 |
В6 |
110 |
1 |
У11. У20. У13 |
0 |
0 |
1 |
0 |
0 |
1 |
7 |
В6
|
110 |
В6 |
110 |
_ х3. |
У11. У20. У13 |
0 |
0 |
0 |
0 |
0 |
0 |
8 |
В6 |
110 |
х3х7 |
- |
0 |
0 |
0 |
0 |
0 |
0 | ||
9 |
В7 |
111 |
_ _ х3х7 х2 |
У9. У12. У21 |
0 |
0 |
0 |
0 |
1 |
0 | ||
10 |
В7 |
111 |
_ х3х7 х2 |
У9. У12. У15 |
0 |
0 |
0 |
0 |
1 |
0 | ||
11 |
В7 |
111 |
В8 |
000 |
1 |
У4. У11. Уk |
0 |
1 |
0 |
1 |
0 |
1 |
При формировании этой таблицы использовалась кодировка состояний цифрового автомата двоичными эквивалентами их индексов. В качестве элемента памяти использован RS-триггер. Таблица переходов RS-тригера приведена в таблице 2.2.
Таблица 2.2- Таблица переходов RS-триггера
R |
S |
||
0 0 0 0 1 1 1 1 |
0 0 1 1 0 0 1 1 |
0 1 0 1 0 1 0 1 |
0 1 1 1 0 0 - - |
На основании составленной таблицы логические выражения для выходных сигналов и сигналов управления памятью имею вид:
_ _
S1=Q1Q2Q3 х3 (4)
R1= Q1Q2Q3 (11)
_ _ _
S2= Q1Q2Q3 + Q1Q2Q3 (1, 6)
_ _
R2= Q1Q2Q3 х3 +Q1Q2Q3 (4, 11)
_ _ _ _ _ _ _
S3= Q1Q2Q3 +Q1Q2Q3х3х7 х2+ Q1Q2Q3х3х7 х2 (5, 9, 10)
_ _ _ _ _ _ _
R3= Q1Q2Q3+ Q1Q2Q3 + Q1Q2Q3 х3 +Q1Q2Q3+ Q1Q2Q3 (1, 2, 4, 6, 11)
_ _ _ _
Y1=Q1Q2Q3 + Q1Q2Q3 (1,2)
_ _
Y31=Q1Q2Q3 (1)
_ _ _ _ _ _ _ _
Y11=Q1Q2Q3 + Q1Q2Q3 х3 + Q1Q2Q3 х3+ Q1Q2Q3+ Q1Q2Q3 х3 + Q1Q2Q3 (2,3,4,6,7,11)
_ _ _ _ _
Y20= Q1Q2Q3 х3 + Q1Q2Q3 + Q1Q2Q3 х3 (4,6,7)
_ _ _ _ _
Y13= Q1Q2Q3 х3 + Q1Q2Q3 + Q1Q2Q3 х3 (4,6,7)
_ _
Y27= Q1Q2Q3 (5)
_ _
Y10= Q1Q2Q3 (5)
_ _ _ _ _
Y9= Q1Q2Q3 х3 х7 х2 + Q1Q2Q3 х3 х7 х2 (9,10)
_ _ _ _ _
Y12= Q1Q2Q3 х3 х7 х2 + Q1Q2Q3 х3 х7 х2 (9,10)
_ _ _
Y21= Q1Q2Q3 х3 х7 х2 (9)
_ _
Y15= Q1Q2Q3 х3 х7 х2 (10)
Y4=Q1Q2Q3 (11)
Yk=Q1Q2Q3 (11)
После записи дизъюнктивной логической функций для выходных сигналов и сигналов управления разрядами памяти в скобках приведен перечень кодов используемых в этом выражении конъюнкций. В качестве этих кодов использованы номера строк в таблице, в которых отражается соответствующий путь.
На рисунке 2.3 приведена логическая схема, реализующая цифровой автомат, заданный графом на рисунке 2.2.
На вход схемы поступают проверяемые условия х3, х2, х7. Обратные значения этих условий формируются с помощью трех схем НЕ.
На схеме каждый выход конъюнктивной части ПЛМ (горизонтальные линии) помечен кодом конъюнкции (номером строки в таблице), формируемой на этом выходе.
Выходом схемы является множество сигналы микроопераций у1, у31, у11, у20, у9, у12, у21, у15, у4, ук.
Рисунок 2.3.- Схема автомата Мили.
Задание 2.2
Написать микропрограмму, соответствующую ГСА приведенной на рисунке 2.4. В каждом адресе запоминающего устройства может храниться 16 бит информации. Обозначение ук соответствует микрооперации, обозначающей последнюю микрокоманду в микропрограмме.
Управления объект, характеризуется следующими параметрами: