DRAKON.SU
https://forum.drakon.su/

Цепочка больших дракон-схем формата А1 (реальный пример)
https://forum.drakon.su/viewtopic.php?f=78&t=1959
Страница 1 из 4

Автор:  Владимир Паронджанов [ Четверг, 15 Октябрь, 2009 10:34 ]
Заголовок сообщения:  Цепочка больших дракон-схем формата А1 (реальный пример)

Привожу пример реальной дракон-схемы.
Схема занимает 5 листов формата А1.
Мысленно расположите листы по горизонтали (в цепочку)
слева направо.
Пронумеруйте листы 1, 2, 3, 4, 5.
Для увеличения листов используйте "лупу" со знаком +

http://store.oberoncore.ru/lib/image/drakon/list1.png
http://store.oberoncore.ru/lib/image/drakon/list2.png
http://store.oberoncore.ru/lib/image/drakon/list3.png
http://store.oberoncore.ru/lib/image/drakon/list4.png
http://store.oberoncore.ru/lib/image/drakon/list5.png

Обратите внимание на следующее:

1.На 1-м листе в первой ветке расположен комментарий.
В нем описан смысл всей дракон-схемы, то есть смысл всех
пяти листов. Этот комментарий называтся "стратегический
комментарий". Он дает общую картину (в отличие от
локального комментария, который объясняет какую-нибудь
мелкую деталь).

2. Все 5 листов соединены эргономическими соединителями.
(Понятие " соединитель" пояснено тут):
viewtopic.php?f=62&t=1917

3. Дракон-схема из 5 листов содержит 18 веток, разделенных
ритмическими полосами.

4. Перечень всех 18 веток.
Лист 1.

        ОПИСАНИЕ.ЗАДАЧИ........... (ветка 1)
        ВЫБОР.КОДА.РЕЖИМА....... (ветка 2)
        ПОДГОТОВКА.СУ.К.ПВ........ (ветка 3)
        ИСХОДНОЕ.СК ................. (ветка 4)
        КОНТРОЛЬ.ФИДЕРА.ПЗ .......(ветка 5)

Лист 2

        ВКЛЮЧЕНИЕ ШИНЫ.АУ2 ...... (ветка 6)
        ВКЛЮЧЕНИЕ.ИП1 .............. (ветка 7)
        ВКЛЮЧЕНИЕ.ИП2 .............. (ветка 8)
        ВКЛ.БОРТ.ПИТАНИЯ .......... (ветка 9)
        ВКЛЮЧЕНИЕ.БЦВК ........... .(ветка 10)

Лист 3

        ЗАГРУЗКА.БЦВМ ............... (ветка 11)
        ЗАГРУЗКА.КР.В.БЦВМ ..........(ветка 12)
        ГОТОВНОСТЬ.СУ ................(ветка 13)

Лист 4

        ПВ.БЦВК...........................(ветка 14)
        ДИАЛОГ.НАЧАЛО.................(ветка 15)
        ДИАЛОГ.ПРОДОЛЖЕНИЕ........(ветка 16)

Лист 5

        ДИАЛОГ.КОНЕЦ..................(ветка 17)
        ЗАВЕРШЕНИЕ....................(ветка 18)

5. Описание цикла ДЛЯ на листах 4 и 5.
Цикл ДЛЯ занимает три ветки:

        ДИАЛОГ.НАЧАЛО (ветка 15)
        ДИАЛОГ.ПРОДОЛЖЕНИЕ (ветка 16)
        ДИАЛОГ.КОНЕЦ (ветка 17)

6. Правило. Если цикл ДЛЯ занимает две или более веток, то цикл ДЛЯ
должен быть обрамлен веточным циклом.
        6.1. Икона "Начало цикла ДЛЯ" размещается сразу под иконой
        "имя ветки", обозначающей начало веточного цикла.
        6.2. Икона "Конец цикла ДЛЯ" размещается перед иконой "адрес"
        обозначающей конец веточного цикла.
        6.3. В иконе "имя ветки",обозначающей начало веточного цикла, в данном
        случае написано ДИАЛОГ.НАЧАЛО,
        6.4. В иконе "адрес",обозначающей конец веточного цикла, в данном
        случае написано ДИАЛОГ.КОНЕЦ,

7. Пояснение. Цикл ДЛЯ может быть длинным. Он может не поместиться
в одну ветку (и даже в две ветки). В этом случае иконы "Начало цикла
ДЛЯ" и "Конец цикла ДЛЯ" могут оказаться в разных ветках
(см. пункты 6.1 и 6.2).

Наталья Александровна Волкова! Посмотрите также темы
viewtopic.php?f=62&t=1781
viewtopic.php?f=62&t=1917
viewtopic.php?f=62&t=1878

Автор:  ==== [ Пятница, 16 Октябрь, 2009 20:57 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

В.Д., у меня вопрос.

При цикле FOR в нескольких ветках, куда передается управление из иконы "Конец FOR" после завершения последней итерации?

Ведь за ней находится икона "Адрес" с передачей управления на ветку с иконой "Начало FOR", т.е. цикл FOR находится внутри веточного цикла.
Нужен ли цикл FOR, ведь работает веточный цикл?
Или цикл FOR нужен только для наличия переменной цикла?
Выход из цикла возможен только по иконе "Вопрос" через заземленную лианы на внешнею ветку и невозможен при завершению всех итераций.

Автор:  Владимир Паронджанов [ Суббота, 17 Октябрь, 2009 10:25 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Г.Н., Вы правы, здесь вкралась ошибка.
Исправление ошибки требует обдумывания.

Автор:  ==== [ Суббота, 17 Октябрь, 2009 11:37 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

В.Д., у меня 2-й вопрос.

В циклах "ЖДАТЬ" в иконах "Период" не указано время. Что это обозначает?
Не используется система реального времени, и частота опроса иконы "Вопрос" определяется тактовой частой процессора, в периоде ожидания процессор не используется для другой обработки?

Автор:  Владимир Паронджанов [ Суббота, 17 Октябрь, 2009 13:30 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Ответ дан в книге "Как улучшить работу ума..." на стр.170, 171, а точнее в последнем
абзаце параграфа ОПЕРАТОР "ПЕРИОД"

Автор:  ==== [ Суббота, 17 Октябрь, 2009 14:15 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

В.Д., спасибо, прочитал.

В.Д., Вы употребили термин "оператор", и он у вас чаще встречается в "Глава 11: Визуальные операторы реального времени". Возможно он более адекватный чем термин "икона", и он более традиционный для различных языков.

Как Вы смотрите на возможную замену термина "икона" для пользователей языка ДРАКОН?
Что, об этом, думают участники форума?
Использование термина "оператор" может быть более эргономично и естественно для пользователей.

В.Д., Вы в других главах практически не употребляете термин "оператор".

Автор:  Илья Ермаков [ Суббота, 17 Октябрь, 2009 17:19 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Имхо, однозначно не "икона".

И, возможно, как раз "оператор" :)

Автор:  and007 [ Суббота, 17 Октябрь, 2009 21:02 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Или макроблок? Оператор один, а дракон язык сверхвысокого уровня, в одной иконке реально может содержаться много операторов.

Автор:  Рэйлвэй Каген [ Воскресенье, 18 Октябрь, 2009 09:49 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Значок? (с толерантностью - порядок, да и толмачам проще будет :) )

"Оператор" и "макро.." - уж очень предметно.

Автор:  Alexey_Donskoy [ Воскресенье, 18 Октябрь, 2009 18:44 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Оператор, оператор!
"Значок" не несёт вообще никакой смысловой нагрузки, а здесь имеет место действие. Поэтому оператор!
"Макро" имеет смысл только в контексте конкретного набора типовых элементов, более того, указывает на конкретную реализацию кодогенератора или другой исполняющей системы.
Оператор по смыслу ближе всего.

Автор:  Borg [ Воскресенье, 18 Октябрь, 2009 20:02 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Может тогда уж лучше инструкция или команда. Оператор это скорее отображение, чем команда.

Автор:  Рэйлвэй Каген [ Воскресенье, 18 Октябрь, 2009 20:03 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Alexey_Donskoy писал(а):
.."Значок" не несёт вообще никакой смысловой нагрузки..
Зато сразу обращает внимание на визуальный аспект. Называть прямоугольник оператором, по-моему, не стОит.

Автор:  Alexey_Donskoy [ Воскресенье, 18 Октябрь, 2009 20:24 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Ну, я не математик, понятие "опреатор" я воспринимаю как "оператор языка". А какой язык - визуальный или текстовый, безразлично. Главное, что императивный.

Автор:  Geniepro [ Воскресенье, 18 Октябрь, 2009 21:26 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Назовите блок (кода, операторов), как в Аде...

Автор:  Alexey_Donskoy [ Воскресенье, 18 Октябрь, 2009 21:57 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Можно и блок.
Только всё равно же язык из операторов состоит, разве не так? :D

Автор:  ==== [ Суббота, 24 Октябрь, 2009 16:02 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Здесь
Цитата:
6. Правило. Если цикл ДЛЯ занимает две или более веток, то цикл ДЛЯ
должен быть обрамлен веточным циклом.
Владимир Паронджанов писал(а):
Г.Н., Вы правы, здесь вкралась ошибка.
Исправление ошибки требует обдумывания.

Владимир Даниелович, http://forum.oberoncore.ru/viewtopic.php?p=34024#p34024, проблемы, не с этой ошибкой связаны?

Как решается вопрос "Цикл ДЛЯ в нескольких ветках" в части рекомендаций?

Автор:  and007 [ Воскресенье, 25 Октябрь, 2009 07:45 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Тогда можно назвать "графема" (графический блок)

P.S. Также привожу пример полностью написанной программы интеллектуального датчика на микроконтроллере. Слово "интеллектуальный" обозначает просто коррекцию систематической погрешности.
В 1-м файле собственно алгоритм коррекции. В 2-м математическая библиотечка.
Если писать код на Си то достаточно первого листа. Однако, из-за использования устаревшего микроконтроллера с малым объемом памяти без встроенной математики пришлось писать на асме. В итоге код программы занял около 9 страниц.

Вложения:
sens.drt [11.9 КБ]
Скачиваний: 1038
matem.drt [8.71 КБ]
Скачиваний: 963

Автор:  Владимир Паронджанов [ Воскресенье, 25 Октябрь, 2009 10:59 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Геннадий Тышов писал(а):
Здесь
Цитата:
6. Правило. Если цикл ДЛЯ занимает две или более веток,
то цикл ДЛЯ должен быть обрамлен веточным циклом.

Владимир Паронджанов писал(а):
Г.Н., Вы правы, здесь вкралась
ошибка.Исправление ошибки требует обдумывания.


Владимир Даниелович, Как решается вопрос "Цикл ДЛЯ
в нескольких ветках" в части рекомендаций?


Ответ

1. Цикл ДЛЯ может быть длинным и занимать несколько веток.

2. Трудность в том, что две иконы "Начало цикля ДЛЯ" и
"Конец цикла ДЛЯ" находятся не рядом, а далеко друг
от друга.

3. Это плохо. Это неудобно. Это значит, что цикл ДЛЯ
как единый визуальный объект становится трудноразличимым.

4. Глазу трудно увидеть цикл ДЛЯ, потому что он находится
в разных ветках.

5. Надо помочь глазу. Надо сделать так, чтобы цикл ДЛЯ
стал более заметным для глаза.

6.Чтобы сделать цикл ДЛЯ более заметным, применяется
специальный прием, а именно:
Цикл ДЛЯ должен быть обрамлен веточным циклом.

7. Веточный цикл имеет черные треугольники. Эти треугольники
очень хорошо видны.

8. Хитрость вот в чем. Глаз легко замечает черные треугольники.
А теперь -- внимание! Рядом с черными треугольниками рас-
положены две иконы "Начало цикла ДЛЯ" и "Конец цикла ДЛЯ".

9. Вопрос. Зачем нужны черные треугольники в веточном цикле?
Ответ. В данном случае они играют роль УКАЗАТЕЛЕЙ, которые
"показывают пальцем" на НАЧАЛО и КОНЕЦ цикла ДЛЯ.

СЛЕДУЮЩИЙ ВОПРОС: В ЧЕМ СУТЬ ОШИБКИ,
КОТОРУЮ ЗАМЕТИЛ ТЫШОВ?


Геннадий Тышов писал:

Цитата:
В.Д., у меня вопрос.

При цикле FOR в нескольких ветках, куда передается
управление из иконы "Конец FOR" после завершения
последней итерации?

Ведь за ней находится икона "Адрес" с передачей
управления на ветку с иконой "Начало FOR", т.е. цикл FOR
находится внутри веточного цикла.


Ответ Как исправить ошибку?

1. Смотри рис. внизу.

2. После иконы "Конец цикла ДЛЯ" вставляется икона вопрос.

3. После окончания цикла ДЛЯ икона вопрос изменяет путь
(выходим направо через да) и входим в икону адрес
"Завершение" и т. д.

4.Не забудьте: Надо заблаговременно инициализировать идентификатор
в иконе вопрос.

Вложения:
.ошибки.png
.ошибки.png [ 19.81 КБ | Просмотров: 28133 ]

Автор:  ==== [ Воскресенье, 25 Октябрь, 2009 12:52 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

В.Д., спасибо за ответ.

Извините, но я нахожу его не удовлетворительным, т.к. нарушается формализм языка Дракон.
В ответе предлагается использовать веточный цикл там, где он не требуется, в целях наглядности :
Цитата:
6.Чтобы сделать цикл ДЛЯ более заметным, применяется специальный прием, а именно:
Цикл ДЛЯ должен быть обрамлен веточным циклом.

7. Веточный цикл имеет черные треугольники. Эти треугольники очень хорошо видны.

8. Хитрость вот в чем. Глаз легко замечает черные треугольники. А теперь -- внимание! Рядом с черными треугольниками расположены две иконы "Начало цикла ДЛЯ" и "Конец цикла ДЛЯ".

9. Вопрос. Зачем нужны черные треугольники в веточном цикле?
Ответ. В данном случае они играют роль УКАЗАТЕЛЕЙ, которые "показывают пальцем" на НАЧАЛО и КОНЕЦ цикла ДЛЯ.

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

Для наглядности достаточно соседства икон "Имя ветки" и "цикл ДЛЯ начало", "цикл ДЛЯ конец" и "Адрес". Так же, можно поставить иконы "Правый комментарий" к иконам начала и конца цикла ДЛЯ.
Так как разнесение цикла ДЛЯ в соседние ветки возможно, то в описание языка Дракон можно добавить указание "В ветки содержащие цикл ДЛЯ (за исключением c иконой начало цикла ДЛЯ) не должно передаваться управление из других веток".

Автор:  ==== [ Воскресенье, 25 Октябрь, 2009 22:28 ]
Заголовок сообщения:  Re: Цепочка больших дракон-схем формата А1 (реальный пример)

Здесь
and007 писал(а):
Также привожу пример полностью написанной программы интеллектуального датчика на микроконтроллере.
Всё интересно.

Обратите внимание на схему "Фоновый вывод в UART".
Вывод битов должен быть в цикле. Необходимо преобразовать развилку в цикл и инициализировать переменную "count_bit=0".

Обратите так же внимание на схему "Основная программа".
Необходимо организовать по байтную передачу телеметрии из 10 байтов в в схему "Фоновый вывод в UART".

Обратите так же внимание на схему "Формула".
Наблюдается использование идентификаторов "JJ" и "J", скорее всего это одна переменная.

Страница 1 из 4 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/