Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа ИСПиУ.doc
Скачиваний:
13
Добавлен:
24.11.2019
Размер:
343.55 Кб
Скачать
  1. Что такое операнд в языке st?

Операндом является литерал, переменная, струк­турированная переменная, компонент структурированной пере­менной, обращение к функции, выход FB/DFB или прямой адрес.

При доступе к массивам переменных ARRAY элемент указате­ля позволяет использовать только литералы и переменные типа ANY_INT

  1. Что такое утверждение в языке st?

Утверждения являются командами языка про­граммирования ST. Утверждения должны закрываться точками с запятой. Одна строка может содержать несколько утверждений (отделяемые точками с запятой).

Следующие утверждения доступны:

  • распределения;

  • объявления VAR...END_VAR;

  • объявления функциональных блоков;

  • команды IF...THEN...END_IF;

  • ELSE;

  • ELSIF ... THEN;

  • CASE ... OF ... END_CASE;

  • FOR ... TO ... BY ... DO ... END_FOR;

  • WHILE ... DO ... END_WHILE;

  • REPEAT;

  • EXIT;

  • фиктивное утверждение.

6 Какое утверждение используется в языке st для завершения утверждения повторения (for, while, repeat) прежде, чем конечное условие будет выполнено?

Утверждение EXIT используется, чтобы завершить утверждения повторения (FOR, WHILE, REPEAT) прежде, чем конечное условие выполнено.

Лабораторная работа №5 «Создание программы на языке il»

Создать программу на языке IL согласно условиям задания 1.

Возможное решение представлено ниже

VAR

FBI_1_10:TON;

FBI_1_15:RS;

FBI_1_9:TON;

FBI_1_3:RS;

END_VAR

LD on_le

ANDN mot_ri

OR time_ri

ST FBI_1_3.S

LD stop

OR time_le

ST FBI_1_3.R1

CAL FBI_1_3

LD FBI_1_3.Q1

ST mot_le

LD FBI_1_3.Q1

ST FBI_1_9.IN

LD t#5s

ST FBI_1_9.PT

CAL FBI_1_9

LD FBI_1_9.q

ST time_le

LD FBI_1_9.ET

TIME_TO_INT

ST et_le

LD on_ri

ANDN mot_le

OR time_le

ST FBI_1_15.S

LD stop

OR time_ri

ST FBI_1_15.R1

CAL FBI_1_15

LD FBI_1_15.Q1

ST mot_ri

LD FBI_1_15.Q1

ST FBI_1_10.IN

LD t#10s

ST FBI_1_10.PT

CAL FBI_1_10

LD FBI_1_10.Q

ST time_ri

LD FBI_1_10.ET

TIME_TO_INT

ST et_ri

IL (Instruction List) – текстовый язык низкого уровня, по син­таксису напоминает Ассемблер.

Запускаем Concept. Создаем новый проект File → New project. Выполняем конфигурирование контроллера. Создаем новую секцию File → New section…, выбираем язык IL и вводим имя секции (до 32 символов), которое должно быть уникальным для всего проекта.

В данной лабораторной работе использовали команду VAR…END_VAR для объявления функциональных блоков и блоков DFB. Объявили переменные и их начальные значения в редакторе переменных. Project → Variable Editor.

VAR – объявление FBD блока;

ST – функция, которая устанавливает значение переменной;

LD – функция, которая загружает значения в аккумулятор;

ST – установление значения переменной;

ANDN – модификатор (меняет работу программы);

СAL – вызов функционального блока.

Объявим переменные и их начальные значения в редакторе переменных. Project → Variable Editor...

Для проверки правильности выполнения данной задачи воспользуемся эмулятором Simulator 32-Bit.

Контрольные вопросы

  1. Охарактеризуйте язык списка инструкций il.

Язык IL является языком низкого (машинного) уровня, что су­щественно облегчает, например, условный или безусловный вызов функциональных блоков и функций, выполнение назначений и условных или безусловных переходов внутри секции, похож на Ассемблер. Язык IL позволяет создавать высокоэффективные и оптимизированные функции. Его можно рекомендовать для напи­сания наиболее критических мест в программе.