Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Выражение - это конструкция, из которой после оценки сотрется значение соответ-
ствующее одному из типов данных, которые были определены в главе 6.
Выражение состоит из операторов и операндов. Операндом может быть литеральная
константа, переменная, вызов функции или другое выражение.
Операторы языка структурированного текста ST - это перечни, упорядоченные
в Табл.7.1.
Табл.7.1 Операторы в языке структурированного текста ST
Для операндов операторов действуют такие же ограничения как для входов соответствующих функций определенных в главе 3. Напр. результат оценки выражение A**B такой же, как результат оценки функции EXPT(A, B).
Оценка выражения состоит в приложение операторов на операндy, а именно - с уче-
том приоритета, выраженного в Табл.5.1. Сначала применяются операторы с наивысшим
приоритетом в выражении, потом следующие операторы в направлении к более низкому приоритету до тех пор, пока оценка не будет закончена. Операторы с одинаковым приоритетом оцениваются так, как это записано в выражении - в направлении слева на право.
Основой ST-программы служат выражения. Результат вычисления выражения присваивается переменной при помощи оператора «:=», как и в Паскале. Каждое выражение обязательно заканчивается точкой с запятой «;». Выражение состоит из переменных констант и функций, разделенных операторами:
iVarl:= 1 + iVar2 / ABS(iVar2);
Стандартные операторы в выражениях ST имеют символьное представление, например математические действия: +, -, *, /, операции сравнения и т. д.
Помимо операторов, элементы выражения можно отделять пробелами и табуляциями для лучшего восприятия. В текст могут быть введены комментарии. Везде, где допустимы пассивные разделители, можно вставлять и комментарии:
iVarl:= 1 + (*получить знак*) iVar2 / ABS(iVar2); (*проверка на 0 была выше*)
Несколько выражений можно записать подряд в одну строку. Но хорошим стилем считается запись одного выражения в строке. Длинные выражения можно перенести на следующую строку. Перенос строки равноценен пассивному разделителю.
Выражение может включать другое выражение, заключенное в скобки. Выражение, заключенное в скобки, вычисляется в первую очередь.
Тип выражения определяется типом результата вычислений:
bAlarm:= byInp1 > byInp2 AND byInp1 + byInp2 <> 0 OR bAlarm2;
Дата публикования: 2015-04-10; Прочитано: 292 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!