Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МиАПО / SIMC_dorab.doc
Скачиваний:
13
Добавлен:
07.02.2016
Размер:
756.22 Кб
Скачать

1.2 Системные константы, типы и переменные

Множество объектов определено в системе СИМ-СИ путем введе­ния абстрактных типов данных. Создание или определение требуемого количества объектов возложено на программиста, он также обя­зан предусмотреть действия над объектами при возникновении в системе определенных условий.

Системные константы используются для настройки системы мо­делирования на доступную при реализации на конкретной ЭВМ па­мять. Число системных констант невелико, но они влияют на воз­можности системы.

Ниже определяются следующие константы:

evemax- ограничивает в системе максимальное количество со­бытий; каждое событие, как уже указывалось, определяет последо­вательность действий (фактически алгоритм поведения транзакта при его перемещении в соответствующую событию точку модели). Чем больше число событий определено в модели, тем более детальным является описание реальной системы. В этом смыслеevemax ограни­чивает возможности СИМ-СИ по представлению реальных систем.

signmax- константа ограничивает количество сигналов в сис­теме. Сигналы используются для взаимодействия между транзактами, находящимися в различных частях модели. Сигналы можно передавать и принимать (в случае необходимости ожидая их появления).

hint- константа, задающая максимальное число интервалов в гистограмме. Собственноhint задает число точек на числовой оси, задающих интервалы для табулирования значений.

Следующие константы имеют отношения к транзактам:

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

Константы, устанавливающие число параметров транзакта:

mptbчисло булевских параметров:

mptrчисло действительных параметров:

mptiчисло целочисленных параметров:

mptfчисло указателей на приборы:

mptqчисло указателей на очереди:

mptsчисло указателей на накопители.

Подробное назначение констант дается в определении типов.

Системные типы

Введение абстрактных типов данных, представляемых ниже, по­ложено в основу формализации процесса моделирования.

Предлагаемые типы служат для создания системной среды и ис­пользуются пользователем для определения необходимых ему объек­тов.

Заметим, что в системе моделирования определены как типы данных:

1) структуры абстрактных объектов;

2) указатели на эти структуры:

Указатели используются для определения положения объекта, а сам объект содержит необходимые поля данных, значения которых используются при моделировании.

Скалярные типы данных

Для определения переменных, имеющих смысл времени, использу­ется тип double.

При моделировании время изменяется от нуля до некоторой по­ложительной величины. Единица измерения времени в системе не оп­ределяется: следовательно интерпретация времени в модели задает­ся теми единицами времени, которые определил пользователь.

Тип prtyrange=-prtymax..prtymaxопределяет диапазон измене­ния приоритетов транзактов, в дальнейшем используется для опре­деления новых типов данных.

Пространство изменения системных событий определено ти­пом event=1..evemax.

Нумерация событий в модели не должна выходить за пределы, заданные типом event. Модели, процессы и подмодели занимают связную область пространства событий.

Тип enum parmtype{parmb,parmi,parmr,parmf,parmq,parms,last_parmtype} специфицирует типы параметров транзакта:

parmbзадает параметр булевского типа;

parmiзадает параметр целого типа;

parmrзадает параметр действительного типа;

parmfзадает параметр типа указатель на прибор;

parmqзадает параметр типа указатель на очередь;

parmsзадает параметр типа указатель на накопитель.

Тип parmtypeиспользуется вспомогательными функциями.

К числу скалярных типов также относятся указатели на неко­торые типы системных переменных. Их описание будем приводить при определении соответствующего типа.

Соседние файлы в папке МиАПО