Каждый блок определяет операцию, выполняемую над транзактом, проходящим в этот блок, напрмер:
GENERATE - генерировать транзакт,
TERMINATE - вывести транзакт из модели,
ADVANCE - задержать транзакт
SEIZE - занять прибор,
RELEASE - освободить прибор и др.
Блоки занимают определенные места в блок-схеме, а соответствующие им программные строки – места в ИП. Названия блоков в ИП могут идентифицироваться по первым четырем буквам.
Номера блокам присваивает сам GPSS-интерпретатор в порядке их расположения в ИП.
Блок может иметь:
- ИМЯ (от 3-5 символов, первые 3- обязательно символические). Используется как метка блока для передачи ему управления не в порядке расположения в блок-схеме (написания ИП);
- несколько основных операндов (≤ 7). В общем виде при их описании назначения операндов используются следующие заглавные буквы латинского алфавита: A, B, C, D, T, F, G .
Некоторые из операндов определенных блоков должны быть обязательно заданы. Другие могут определяться по умолчанию. Большинство операндов, если они задаются численно, определяются как целые числа. Многие из них при этом определяют временные характеристики воздействия блока на транзакт и определяются в выбранных разработчиком GPSS-модели единицах модельного времени.
Структура строки ИП, соответствующей блоку, имеет следующий вид по номерам колонок:
первая позиция не является частью имени блока; * в 1-ой позиции означает, что данная стока является комментарием.
Некоторые блоки в поле операции используют вспомогательный операнд «X».
Операнды следуют друг за другом без пробелов и разделяются запятыми.
Пропущенные операнды, определяемые по умолчанию, отмечаются следующими друг за другом запятыми «,,».
Первая колонка поля операндов, определяемая как пробел, говорит о конце записи операндов. Дальнейшая информация в строке воспринимается как комментарий к этой строке.
Отдельные блоки блок-схемы объединяются в сегменты. В ИМ может быть несколько сегментов. Отдельные сегменты отображают функционирование различных частей моделируемой системы. Некоторые сегменты выполняют вспомогательные функции: задание времени прогона ИМ, организацию периодического вывода результатов моделирования и др.
Каждый сегмент должен иметь в своем составе хотя бы один блок GENERATE.