Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
04.01.2020
Размер:
4.22 Mб
Скачать
  1. Процедуры

Символ процедуры

Ключевое слово PROCEDURE

Символ старта процедуры

Семантика

Процедуры SDL подобны процедурам других языков программирования.

Назначение процедур:

  • разрешение структурирования процесса на уровни разной степени детализации;

  • поддержка компактности спецификаций, разрешив рассматривать как один элемент сложный комплекс различных элементов, который может быть описан изолировано от остальных;

  • разрешение отдельного описания и повторное использование часто используемых комплексов элементов.

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

На SDL/GR определение процедуры изображается с помощью диаграммы, весьма близкой к диаграмме процесса. Диаграмма процедуры состоит из следующих элементов:

  • необязательного символа кадра: прямоугольный по форме символ, содержащей все прочие символы;

  • заголовка процедуры: ключевое слово PROCEDURE, за которым следует имя процедуры и спецификация формальных параметров процедуры. Обычно заголовок процедуры помещают в верхний левый угол кадра или, если символ кадра не используется, то в левый верхний угол того носителя, на котором изображается диаграмма;

  • необязательной нумерации страниц (помещается в правый верхний угол);

  • символ текста: для случая диаграммы процедуры символы текста могут использоваться для помещения в них спецификаций формальных параметров, данных и определений переменных;

  • ссылок на процедуры: символ процедуры, каждый ив которых содержит имя процедуры, представляющее локальную, отдельно определенную процедуру;

  • диаграммы процедуры: спецификация поведения процедуры в терминах старта, состояний, вводов, выводов и т.д. и ориентированных дуг.

На рисунке 20 представлен пример диаграммы процедуры.

Вызов процедуры

Символ вызова процедуры

Семантика

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

  • процедура может содержать состояния и, если это имеет место, получать сигналы;

  • процедура может посылать сигналы. Процесс, посылавший сигналы, является тем процессом, который осуществлял вызов процедуры.

После вызова процедуры создается процедура и начинается ее интерпретация. Интерпретация продолжается до тех пор, пока не будет достигнут RETURN.

Вызов процедуры изображается с помощью символа вызова процедуры, содержащего имя процедуры и заключенный в круглые скобки список фактических параметров. Пример вызова процедуры приведен на рисунке 20.

Рисунок 20 – Пример диаграммы процедуры

Возврат

Символ возврата

Семантика

При достижении диаграммой процедуры вершины возврат происходит следующее:

  • все переменные, созданные в результате интерпретации вершины старта процедуры, прекращают свое существование;

  • после этого действие возвращается в вершину, непосредственно следующей за вершиной вызова процедуры.

Соседние файлы в папке ЯМСЭ