Главная » Все файлы » Просмотр файлов из архивов » Документы » Задание на лабораторные работы

Задание на лабораторные работы, страница 8

2018-01-12СтудИзба

Описание файла

Документ из архива "Задание на лабораторные работы", который расположен в категории "". Всё это находится в предмете "моделирование систем" из 8 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "моделирование систем" в общих файлах.

Онлайн просмотр документа "Задание на лабораторные работы"

Текст 8 страницы из документа "Задание на лабораторные работы"

Изучение блока MATCH.

Пример 9. Информация поступает на узел связи с интервалом времени 30050 единиц. Обработку производят двое операторов. После завершения операции обработки, выполняемой первым оператором со временем 90 единиц и вторым со временем 60 единиц, производится операция сверки, время выполнения которой принимается равной нулю. Затем третий оператор производит формирование пакета информации со временем 40 единиц. Формирование начинается только после поступления всех отдельных частей информации (условных частей информации). Смоделировать процесс прохождения 100 пакетов информации. Программа решения примера 9 представлена как программа 10.

Программа 10

simulate

10 generate 300,50

20 split 1,chan2

30 chan1 seize 1

40 advance 90

50 sss1 match sss2

60 release 1

70 transfer ,comm

80 chan2 seize 2

90 advance 60

100 sss2 match sss1

110 release 2

120 comm assemble 2

130 seize 3

140 advance 40

150 release 3

200 terminate 1

start 100

;end

Из условия примера видно, что специальных мер по реализации прохождения точно 100 пакетов не требуется, так как время поступления условных частей информации на обработку заметно больше суммарного времени обработки: 30050 против 90+60+40=190. В блоке GENERATE не используется поле <D> с установкой числа 100. Синхронизация прохождения транзактов по модели осуществляется с помощью двух блоков MATCH. Один блок MATCH установлен как бы в первом устройстве, а другой — во втором. Транзакты не отправляются в блок ASSEMBLE (на формирование пакета) до тех пор, пока оба устройства (оба оператора) не закончат требуемую обработку.

Формат записи блоков MATCH:

50 sss1 match <A>

100 sss2 match <A>

В поле <A> блока MATCH (под номером 50 и меткой sss1) в программе задается имя сопряженного блока MATCH (метка sss2 под номером 100). Синхронизация движения транзактов осуществляется путем подбора пар транзактов из одного ансамбля и задержки этих транзактов до тех пор, пока оба транзакта из одной пары не поступят в заданные точки модели (в программе это выходы устройств — блоки RELEASE под номерами 60 и 110, откуда они поступают далее на формирование пакета в блок ASSEMBLE).

Без условий синхронизации пример 9 можно видоизменить к следующему виду.

Пример 10. Информация поступает на узел связи с интервалом времени 30050 единиц. Обработку производят двое операторов. После завершения операции обработки, выполняемой первым оператором со временем 90 единиц и вторым со временем 60 единиц, информация отправляется к третьему оператору. Третий оператор производит формирование пакета из поступивших частей информации со временем 40 единиц. Смоделировать процесс прохождения 100 пакетов.

Программа решения примера 10 представлена как программа 11.

Программа 11

simulate

10 generate 300,50

20 split 1,chan2

30 chan1 seize 1

40 advance 90

50 release 1

60 transfer ,comm

70 chan2 seize 2

80 advance 60

90 release 2

100 comm assemble 2

110 seize 3

120 advance 40

130 release 3

200 terminate 1

start 100

;end

Программа 11 по сравнению с программой 10 имеет на два блока меньше, но это приводит к иным результатам. Анализ результатов произвести по файлам стандартного отчета.

Работа логического ключа

Пример 11. На обработку поступают 101 требование с интервалом времени 71 единицы. Нечетные по номеру требования обрабатываются на первом приборе со временем 15 единиц, четные — на втором приборе со временем 17 единиц. Смоделировать процесс прохождения и обработки требований в системе.

Формирование потока четных и нечетных по номеру требований осуществляется блоками LOGIC и GATE (в режиме LS).

Решение примера 11 приводится в программе 12.

Программа 12

simulate

10 generate 10,1,,101

20 logic I key1; Задание операции инвертирования ключа key1

30 gate LS key1,chan2

40 chan1 seize 1

50 advance 15

60 release 1

70 transfer ,exit

80 chan2 seize 2

90 advance 17

100 release 2

200 exit terminate 1

start 101

end

Формат записи блока LOGIC:

  1. logic <X> <A>

Во вспомогательном поле операций <X> задается мнемоническое обозначение I — логический ключ под именем key1 инвертируется. В поле <A> задается номер или имя (в программе имя key1) логического ключа. Ссылка на имя ключа может происходить в любом месте программы. В поле <X> могут быть также заданы следующие мнемонические обозначения:

S — логический ключ устанавливается в состояние "включен";

R — логический ключ устанавливается в состояние "выключен".

Формат записи блока GATE для проверки логических ключей:

  1. gate <X> <A>,<B>

Во вспомогательном поле <X> задается один из следующих логических операторов:

LS — логический ключ, заданный в поле <A>, включен;

LR — логический ключ, заданный в поле <A>, выключен.

В поле <A> задается номер или имя логического ключа, состояние котрого проверяется (в программе key1). В поле <B> задается номер блока, к которому переходит транзакт, если логический оператор вспомогательного поля <X> имеет значение "ложь" (в программе устройство с меткой chan2). Если значение логического оператора — "истина", транзакт переходит к следующему по номеру блоку (в устройство с меткой chan1 под номером 40).

Задания к примерам 9, 11.

  • Для примера 9 изменить средние времена обработки: 60 и 90, 60 и 60, 120 и 60, 60 и 120, соответственно для первого и второго устройств.

  • Для примера 11 применить режим LS блока GATE для изменения порядка прохождения через устройства четных и нечетных транзактов. В исходной программе применить режимы "S" и "R" для блока LOGIC. Написать программу, в которой четные транзакты обрабатываются в устройстве пятикратным циклом, а нечетные транзакты обрабатываются семикратным циклом. В программе изменить имя логического ключа, задать какой-либо числовой номер логического ключа.

  • Изучить и объяснить файлы стандартных отчетов рассмотренных программ.

Лабораторная работа №6

Программирование для статистической

и запоминающей категорий языка GPSS/PC.

Блоки MSAVEVALUE, TABULATE.

Операторы MATRIX, INITIAL, TABLE, QTABLE. Команда PLOT

Цель работы: ознакомление и изучение операторов и блоков системы GPSS/PC для формирования и сохранения матричных значений переменных, построение частотных таблиц заданных числовых атрибутов.

Статистическими объектами языка GPSS/PC являются очереди и таблицы. Регистрация частот попадания табулированной величины или заданного стандартного числового атрибута (СЧА) осуществляется блоком TABULATE. Табулируемая величина заносится в таблицу, имя и характеристики которой определяется оператором TABLE в общем случае и QTABLE для очереди. На основе сформированных таблиц возможно построение гистограмм (диаграмм) с помощью команды PLOT.

Для сохранения и запоминания в модели числовой информации, различных стандартных числовых атрибутов в GPSS/PC отводятся специальные ячейки основной памяти. Совокупности ячеек могут быть организованы в матрицы. Для записи числовой информации в ячейки служит блок SAVEVALUE, в матрицы — блок MSAVEVALUE, который работает совместно с оператором описания матриц MATRIX. Присвоение начальных значений ячейкам и матрицам производится с помощью оператора INITIAL.

Пример 1. На языке GPSS/PC создать две матрицы размером 23: одна должна быть заполнена натуральными нечетными числами, начиная с единицы, а другая со следующими элементами:

где с1 — СЧА — условное модельное время. Сохранить также выражение: целая часть от . Решение примера 1 приводится как программа 1.

Программа 1

simulate

var1 variable c1+100

var2 variable c1+sqr(100)

var3 variable int(sqr(101))

var4 variable sqr(625)

mat1 matrix ,2,3

mat2 matrix ,2,3

initial mx$mat2(2,3),10

initial mx$mat2(2,2),50

10 generate 7,2

*********************************

50 msavevalue mat1,1,1,1

60 msavevalue mat1,1,2,3

70 msavevalue mat1,1,3,5

80 msavevalue mat1,2,1,7

90 msavevalue mat1,2,2,9

100 msavevalue mat1,2,3,11

**********************************

110 msavevalue mat2,1,1,c1

120 msavevalue mat2,1,2,100

130 msavevalue mat2,1,3,v$var1

140 msavevalue mat2,2,1,v$var2

150 msavevalue mat2-,2,2,2

160 msavevalue mat2+,2,3,5

***********************************

170 savevalue mmm3,v$var3

200 terminate 1

start 10

;end

Формат записи операторов MATRIX:

mat1 matrix <A>,<B>,<C>

mat2 matrix <A>,<B>,<C>

Служебное слово MATRIX является операторм описания матрицы. Каждая матрица должна иметь свой оператор описания. Поле метки определяет имя матрицы (в программе это mat1 и mat2). Поле <A> в данной версии GPSS не используется (оставлено пустым для совместимости с более старыми версиями языка GPSS). В поле <B> задается число строк матрицы (для mat1 и mat2 число строк равно 2). В поле <C> задается число столбцов матрицы (для mat1 и mat2 число столбцов равно 3). Каждая матрица может содержать не более 8191 элементов.

Формат записи оператора задания начальных ячеек матрицы INITIAL:

initial mx$mat2(2,2),50

initial mx$mat2(2,3),10

Оператор INITIAL имеет поля <A> и <B>. В поле <A> задан стандартный числовой атрибут mx, связанный с именем матрицы посредством знака $, и с указанием номера строки и номера столбца определяемой матрицы. В поле <B> задается определяемая величина. Операнд поля <B> может быть целым действительным числом. Оператор задания матриц INITIAL должен располагаться в программе после определения матрицы оператором MATRIX.

Формат записи блока MSAVEVALUE рассмотрим на примере формирования матрицы под именем mat2. Во всех блоках используются поля <A>,<B>,<C>,<D>, поэтому приведем все блоки в заданных форматах программы 1.

110 msavevalue mat2,1,1,c1

120 msavevalue mat2,1,2,100

130 msavevalue mat2,1,3,v$var1

140 msavevalue mat2,2,1,v$var2

150 msavevalue mat2-,2,2,2

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее