Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
21 ошибка прогр... 64538
Реклама
Сейчас на сайте
Гостей: 2
На сайте нет зарегистрированных пользователей

Пользователей: 13,136
новичок: Happy
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Игра Sokoban на Delphi + Блок схемы
Моделирование интернет кафе на GPSS + Отчет
Изменения контуров и сортировка в двумерном массиве чисел на Turbo Pasca...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Блоки работы со списками пользователя

Блок LINK

Назначение. Блок помещает активный транзакт в список пользователя.

Синтаксис. LINK  A,B[, C]

Назначение операндов.

Операнд

Назначение

Значение

Значение по умолчанию

A

Список пользователя, в который должен быть помещен входящий в блок транзакт.

Имя, число, СЧА

Обязательный параметр

B

Дисциплина помещения нового транзакта в список пользователя.

LIFO, FIFO, СЧА транзакта

Обязательный параметр

C

Имя блока, куда переходит транзакт, если индикатор компоновки списка пользователя находится в выключенном состоянии (сброшен)

Имя, число, СЧА

Нет

 

Особенности выполнения.

1.      При помещении транзакта в список он удаляется из всех других списков, кроме групп транзактов и списков прерываний.

2.      Транзакт остается в списке пользователя до тех пор, пока какой-либо другой транзакт не войдет в блок UNLINK и не считает его из списка.

3.      Если в операнде В указано FIFO (первым вошел, первым вышел), транзакты помещаются в конец списка.

4.      Если в операнде В указано LIFO (последним вошел, первым вышел), вновь прибывшие транзакты помещаются в начало списка.

5.      Если в операнде В не используется LIFO или FIFO, то применяется СЧА транзакта - PR, M1 или Р. Может быть использована косвенная адресация. Если задано PR, транзакты помещаются в список пользователя в приоритетном порядке. Если задан номер параметра, транзакт помещается в список пользователя позади тех транзактов, значение соответствующего параметра которых меньше, чем у входящего транзакта.

6.      Если задан операнд С, то используется флаг «Индикатор компоновки». Если индикатор компоновки списка пользователя выключен(сброшен) , блок LINK не поместит транзакт в список . Вместо этого транзакт перейдет к блоку указанному в операнде С, после чего индикатор компоновки будет включен (установлен). Следующие транзакты, входящие в блок LINK, будут помещены в список пользователя. Индикатор компоновки управляется блоками LINK и UNLINK. Он выключается (сбрасывается), когда блок UNLINK определяет, что список пользователя пуст.

 

Примеры использования.

LINK CHANNEL,FIFO

Транзакт, вошедший в блок LINK , будет добавлен в конец очереди с именем CHANAL.

 

LINK CHANNEL, PR, LABEL_CH

Если список пользователя CHANNEL пуст (индикатор компоновки списка пользователя выключен) ,транзакт перейдет к блоку с именем LABEL_CH и индикатор компоновки будет включен. Следующие транзакты, входящие в блок LINK, будут помещены в список пользователя. Индикатор компоновки выключится, когда блок UNLINK определит, что список пользователя пуст.

 

Блок UNLINK

Назначение. Блок считывает транзакты из списка пользователя.

Синтаксис. UNLINK  [X]  A,B,[C],[D],[E],[F]

Назначение операндов.

Операнд

Назначение

Значение

Значение по умолчанию

X

Операция сравнения для операндов D и Е.

Условная операция отношения

E

A

Список пользователя, из которого будет считан один или несколько транзактов.

Имя,

число, СЧА

Обязательный операнд.

B

Блок, куда переходят считанные транзакты.

Имя,

число, СЧА

Обязательный операнд

C

Максимальное количество транзактов, которые будут считаны

Имя,

число,

СЧА,

ALL

ALL

D

Определяет условия считывания транзактов из очереди

Имя,

число, СЧА, BACK

Нет

E

Используется совместно с операндом D и X для определения условия считывания транзактов из списка

Имя,

число,

СЧА

Нет

F

 

 

Нет

 

Особенности выполнения.

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

2.      Если транзакт входит в блок UNLINK, когда в списке нет транзактов, индикатор компоновки списка пользователя сбрасывается.

3.      Можно ограничить число считываемых из списка транзактов с помощью операнда С. Если операнд С опущен, то берется ALL.

4.      Если операнды D, Е и условный оператор опущены, исключаются все транзакты с начала списка, пока список не будет исчерпан, или не будет достигнут предел исключаемых транзактов (операнд С).

5.      Операнд D может быть булевой переменной, номером параметра или словом «BACK».

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

Если в операнде D указано BACK, транзакты исключаются, начиная с конца списка пользователя, пока не будет достигнут предел.

В противном случае операнд вычисляется относительно транзакта, находящегося в списке пользователя, и используется в качестве номера параметра, значение которого возвращается членом списка пользователя, как конечный результат. Это конечное значение сравнивается с результатом вычисления операнда Е.

Если операнд D задает параметр, а Е не используется, параметр транзакта из списка пользователя сравнивается с таким же параметром активного транзакта. Если они равны, транзакт, находящийся в списке, считывается из списка.

6.      Операнд Е используется только в том случае, если используется оператор отношения. В этом случае обязательно требуется операнд D. Список пользователя проверяется, начиная с начала. Если условие, заданное оператором отношения, выполняется для операндов D и Е, исключается каждый транзакт, (вплоть до предела (операнд С)). Если в операнде Е используется СЧА транзакта, он вычисляется относительно активного транзакта.

7.      оператор отношения используется для определения соотношения между атрибутом транзакта (операнд D) и значением операнда Е. Если отношение выполняется, то транзакт считывается из списка. В качестве оператора отношения могут быть использованы Е, G, GE, L, LE или NE. По умолчанию в качестве оператора отношения используется Е (равно).

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

 

Примеры использования.

UNLINK  CHANNEL, LABEL_CH,1

Считывается один транзакт из начала списка CHANNEL и он направляется в блок с именем LABEL_CH. Транзакт, вошедший в UNLINK , переходит к следующему блоку

 

UNLINK  BUFFER, FAC_2,1,BACK

Считывается из списка пользователя с именем BUFFER один транзакт с конца списка и он направляется в блок с именем FAC_2.

 

UNLINK E    P$BUF,MET_1,ALL,COND,P$COND,MET_2

Считываются из списка пользователя, номер которого записан в параметре BUF вошедшего транзакта, и направляются в блок с именем MET_1 все транзакты, содержимое параметра COND которых равно содержимому одноименного параметра вошедшего транзакта. Если таких транзактов в списке нет, то вошедший транзакт будет направлен в блок с именем MET_2, в противном случае - к следующему блоку.

Опубликовал Kest Март 31 2014 02:08:17 · 0 Комментариев · 3679 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Программа рисует ...
Работа с картотеками
С/C++ Программиро...
Самоучитель C++
mmmJlabel
Ранги для форума
TrayIcon
Советы от Даниилы...
TMS
Простой текстовый...
Стелтинг Стивен, ...
Самоучитель PHP 4
Crypt32
TrayComp
Turbo Pascal for ...
Delphi 7 Enterpri...
Мониторинг сервер...
Программирование ...
MpegPlay
Пример работы с б...

Топ загрузок
Приложение Клие... 100592
Delphi 7 Enterp... 94114
Converter AMR<-... 20134
GPSS World Stud... 16193
Borland C++Buil... 13545
Borland Delphi ... 9524
Turbo Pascal fo... 7157
Калькулятор [Ис... 5378
Visual Studio 2... 5064
FreeSMS v1.3.1 3582
Случайные статьи
Социальные сети.
Настройка RemoteVi...
Функции управления...
29.100.
Процедуры обработк...
Функция MEMAVAIL. ...
Преобразование иде...
Как решать задачи ...
Первое приложение ...
TopGen 3 (накрутчик)
Символы, используе...
Манипулирование би...
Где барбекю для да...
Эмуляция директивы...
Преобразование теп...
Играть в игровые а...
Вызов кодов драйвера
Съемка по освещени...
Ограничение объясн...
Демонстрация работ...
Виртуальный букмек...
Протокол MEGACO
Модуль CRT. Тексто...
Ставки на Киберспорт
В здании несколько...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?