Контрольная работа: Микропрограммирование операций ЭВМ
логическое сложение,
сложение по модулю два,
равенство.
Естественно, что при наличии скобок вычисления должны вначале выполняться в них.
Запомнить указанную очередность также нелегко, этому может помочь искусственное ключевое слово, составленное из начальных букв отношений и микроопераций, ОИУС2Р.
В качестве примера двоичного условного выражения рассматривается следующее выражение:
В := ùD /\ Е \/ F = G > HÅI.
Для В =1, D= 0101, E = 1100, F = 0110, G = 0101, H = 111, I = 1 будет новое B = 0.
Следовательно, расчеты требуется проводить по выражению V2.
При расчетах условного выражения первой выполняется проверка отношения ">", результату проверки присваивается значение 0, так как отношение неверно.
Второй по очереди выполняется микрооперация инверсии, получается значение 1010.
Третьей реализуется микрооперация конъюнкции, имеет место значение 1000.
Четвертая очередь касается микрооперации дизъюнкции, она дает значение 1110.
Пятой выполняется микрооперация сложения по модулю два, получается значение 1.
Наконец, последняя проверка равенства дает В = 0. Следовательно, расчеты требуется проводить по выражению V2.
После вычисления микроопераций правой части указанного двоичного простого выражения (пусть V2 = А) и передачи его слову правой части получится А = 001110.
Рекомендуется под выражением с помощью фигурных скобок, развернутых острой частью вниз и размещаемых сверху вниз на разных уровнях, записывать получающиеся значения результатов микроопераций, отношений.
Для рассматриваемого примера это будет выглядеть следующим образом:
В:= ùD /\ Е \/ F = G > HÅI.
Значение последней проверки (проверки равенства) и есть значение слова В левой части.
Если выполнять проверки отношений и микрооперации в сторонке и записывать значения в виде столбика, то эта практика также показывает, что почти всегда допускаются неверные результаты каких, либо микроопераций из-за ошибок списывания предыдущих результатов и др.
1.3.3. Сложные конструкции
Сложными конструкциями Ф-языка являются функциональные микропрограммы (ФМП). Их рассмотрение не обходится без использования схем алгоритмов (СА), графических схем алгоритма (ГСА), матричных схем алгоритма (МСА), систем формул перехода (СФП), которые к средствам Ф-языка не относятся и СА, ГСА, МСА, ФМП и СФП подробно описаны в [3].
1.3.3.1. Графические схемы алгоритма
Графическая схема алгоритма или граф-схема алгоритма является аналогом схемы алгоритма, отличается от последней большей формализацией, несколько другим изображением блоков начала и конца.
Поскольку ГСА предложена для алгоритмов операций ЭВМ, то в ней нет средств для отражения ввода-вывода.
Вместо блоков в ГСА используются вершины: начальные Y0 , конечные Yк , операторные вершины Y1 ,Y2 , … , условные вершины X1,X2, … .На рис.2 показана СА классического алгоритма нахождения наибольшего общего делителя (ННОД),
где: А и С - исходные числа,
НОД - наибольший общий делитель.
Видно, что заданные числа при А<С меняются местами (блоки 5¸7). Поскольку после этого получается А >С, то число А заменяется на значение
А - С. Подобные циклы повторяются до получения А= С (блоки 3¸8), число А и будет требуемым результатом (блок 9).