
- •Млта: Математическая логика и теория алгоритмов
- •Комплект трех вариантов структурной формулы
- •Базисные структуры параллельных алгоритмов
- •1.2 Исходные структурные формулы параллельных алгоритмов
- •Стандартная форма формулы алгоритма
- •Контроль результатов
- •1. 2 Автоматизация построений основной схемы алгоритма Исходные условия
- •Вариант 1 структурной схемы. Автоматизация построений
- •Анализ структурной схемы Общие данные структуры алгоритма
- •Проверочная нумерация оболочек формул и схем
- •Вложенность формульных оболочек
- •Явная операция разделения (вилки) потоков
- •Работа с тренажером схемных построений
- •Мозаичный набор схем
- •Временные диаграммы параллельных алгоритмов
- •Графический расчет длительности алгоритма
- •Расчет длительности алгоритма
- •Вербальные тексты параллельных алгоритмов базисных структур
- •ИнФ: Инфиксная форма вербального текста
- •Ги: Горизонтальное исполнение
- •Алг a021: нач z2; нач нач нач z3 и нач z1; нач z5 и z4 кон кон кон; z1 кон и нач z2; нач z6 и нач z7; z2 кон кон кон кон кон ви: Вертикальное исполнение
- •Автоматизация построений
- •НИнФ: Неявная инфиксная форма вербального текста
- •Исходные условия
- •Ги: Горизонтальное исполнение
- •КоФ: Комбинированная форма вербального текста: ИнПрПоФ
- •Ги: Горизонтальное исполнение
- •Alg a022: begin z2; cobegin begin cobegin z3, begin z1; cobegin z5, z4 coend end coend; z1 end, begin z2; cobegin z6, begin z7; z2 end coend end coend_or end
- •Ви: Вертикальное исполнение
- •Автоматизация построений: Алгол (Паскаль)-подобный текст
- •ПрФ: Префиксная форма
- •Исходные условия
- •Ги: Горизонтальное исполнение
- •Ви: Вертикальное исполнение
- •Автоматизация построений
1. 2 Автоматизация построений основной схемы алгоритма Исходные условия
Выполняется работа с программой GRAMPRAL.
В программу вводятся СФА в полном формате:
ПИнФ: Полная инфиксная форма – с явными операциями суперпозиции (–) и всеми необходимыми парами скобок (внешние скобки могут не вводиться).
Вариант 1 структурной схемы. Автоматизация построений
СФА: Структурная формула алгоритма / У: Поток управления
// Замена обозначений: "" на "–"
A021 = (Z2 (((Z3 & (Z1 (Z5 & Z4))) Z1) & (Z2 (Z6 & (Z7 Z2)))))
A021 = (Z2 - (((Z3 & (Z1 - (Z5 & Z4))) - Z1) & (Z2 - (Z6 & (Z7 - Z2)))))
Набор формулы:
Настройки программы: ИнФ / ГИ / БСА / БФ
БСА: Блок-схема алгоритма / ГИ: Горизонтальное исполнение
Настройки: ИнФ / ГИ / ШСА / БФ
ШСА: Штрих-схема алгоритма / ГИ: Горизонтальное исполнение
Вариант 2 структурной схемы. Автоматизация построений
СФА: Структурная формула алгоритма / У: Поток управления
A022 = (Z2 (((Z3 & (Z1 (Z5 & Z4))) Z1) V (Z2 (Z6 & (Z7 Z2)))))
A022 = (Z2 - (((Z3 & (Z1 - (Z5 & Z4))) - Z1) V (Z2 - (Z6 & (Z7 - Z2)))))
Набор формулы
Настройки: ИнФ / ГИ / БСА / БФ
БСА: Блок-схема алгоритма / ГИ: Горизонтальное исполнение
Настройки: ИнФ / ГИ / ШСА / БФ
ШСА: Штрих-схема алгоритма / ГИ: Горизонтальное исполнение
Анализ структурной схемы Общие данные структуры алгоритма
а) Структурный класс алгоритма:
двухполюсный постоянный ациклический алгоритм;
постоянная структура – это алгоритмическая структура с отсутствие переключательных элементов типа "если ... то", циклов с предусловием и т.п.
б) Общие структурные показатели
Показатели |
Значения |
Примечания |
Общее число команд |
10 |
|
Число разных команд |
7 |
Нет повторных вхождений команд |
Общее число элементов |
18 |
Включая узлы вилки и сборки |
Число пар операций распараллеливания |
4 |
#&, #V |
Степень параллелизма |
5 |
Три параллельные ветви алгоритма |
Наличие дизъюнктивных сборок |
вариант 1 – нет вариант 2 – есть |
Нет особенностей Есть 1 особый узел |
Проверочная нумерация оболочек формул и схем
Вложенность формульных оболочек
Для контроля правильности построений используются различные способы нумерации формульных оболочек – пар скобок " (i… )i" = " (i … )i"
СФА 0.2: Структурная формула алгоритма – нумерация оболочек:
а) Внешняя (пристроенная) нумерация оболочек формулы
Первая строка нумерации – уровень вложенности блоков
A022 = (Z2 - ( ( (Z3 & (Z1 - (Z5 & Z4) ) ) - Z1) V (Z2 - (Z6 & (Z7 - Z2) ) ) ) )
1 234 5 6 654 3 7 8 9 98721
Вторая строка нумерации – разные блоки одного уровня
A022 = (Z2 - ( ( (Z3 & (Z1 - (Z5 & Z4) ) ) - Z1) V (Z2 - (Z6 & (Z7 - Z2) ) ) ) )
1 234 5 6 654 3 3 4 5 54321
12 3 32 1 4 5 6 654
б) Внутренняя (встроенная) нумерация оболочек формулы
A022 = (1Z2-(2(3(4Z3&(5Z1-(6Z5&Z46)5)4)-Z13) V (7Z2-(8Z6&(9Z7-Z29)8)7)2)1) =
= (1Z2 - (2 (3 (4Z3 & (5Z1 - (6Z5 & Z46)5)4) - Z13) V (7Z2 - (8Z6 & (9Z7 - Z29) 8) 7) 2) 1)
Вложенность схемных оболочек
Соответственно нумерации формульных оболочек выполняется нумерация
схемных оболочек. Целесообразна двухсторонняя нумерация схемных блоков.
ССА 0.1: Структурная схема алгоритма