![]() |
|
Главная Промышленная автоматика. С соответствующим учетом правил старшинства (см. разд. 3.3.5). Таким образом, например, означает ((((« X(Ь-))Х7)Х{(Р-Г))Xv)x(s-i Знак операции / определен для всех четырех комбинаций типов real и integer и в любом случае дает результат типа real. Знак операции -г- определен только для того случая, когда оба операнта имеют тип integer, и дает результат типа integer, математически определяемый следующим образом: a-i-b = sign (alb) X entier (abs (a/b)) (cm. разд. 3.2.4 и 3.2.5). 3.3.4.3. Операция (множитель) f (первичное выражение) означает возведение в степень, где множитель есть основание, а первичное выражение - показатель степени. Таким образом, например, 2t«t* означает (2")* • тогда как 2 f (й f/га) означает 2"") Если писать / вместо числа типа integer, г вместо числа типа real и а вместо числа типа real или integer, то результат определяется следующими правилами: af/ Если / >О, аХ«Х • • • X«(граз), того же . .. . типа, что и а. . Если / - О, если афО, 1. того-же типа, , что и а; если а = О, не определено. Если i < О, если афО, \/(а X « X... X а) ... • . (знаменатель имеет -/ множителей), типа real; если а = 0, не определено. ttfr Если й>0, ехр(гХ1п(а)у, типа real. Если а = 0, если г>0, 0.0. типа real; если г<0, не определено. Если й < О, всегда не определено. 3.3.5. Ст а р ш И н ство операций Операции в пределах одного выражения выполняются, вообще говоря, в последовательности слева направо с учетом следующих добавочных правил: 3.3.5.1. Согласно синтаксису, данному в разд. 3.3.1, выдерживается следующий порядок старшинства: первый: I второй: Х/- третий: -f- - 3.3.5.2. Значение выражения между левой скобкой и соответствующей правой скобкой вычисляется самостоятельно и используется в дальнейших вычислениях. Следовательно, желаемый порядок выполнения операций в пределах выражения всегда может быть достигнут соответствующей расстановкой скобок. 3.3.6.-А р и ф м ети ка величин типа real Числа и переменные типа real должны интерпретироваться в смысле численного, анализа, т. е. как объекты, определенные с присущей им конечной точностью. Аналогично в любом арифметическом выражении явно подразумевйется возможность отклонения от математически определяемого результата. Тем не менее никакая точная арифметика не определяется и, конечно, считается, что в зависимости от различных конкретных представлений значения арифметических выражений могут вычисляться по-разному. Контроль за возможными последствиями таких различий должен проводиться методами численного анализа. Этот контроль должен рассматриваться как часть описываемого процесса и, следовательно, выражаться в терминах самого языка. 3.4. Логические выражения 3.4.1. Синтаксис (знак операции отношения):: = <!<( = >>=?b (отношение): : = (простое арифметическое выражение) (знак операции отношения) (простое арифметическое выражение) (первичное логическое выражение)= (логическое значение) (переменная) ((указатель функции)! (отношение) I ((логическое выражение)) (вторичное логическое выражение) : : = (первичное логическое выражение) ~] (первичное логическое выражение) (логический одночлен): : = (вторичное логическое выражение) ! (логический одночлен) Л (вторичное логическое выражение) (логический терм) : : = (логический одночлен)!(логический терм)V(логический одночлен) (импликация) : : = (логический терм) ( (импликация) (логический терм) (простое логическое выражение) :: = (импликация) (простое логическое выражение) = (импликация) (логическое выражение): : = (простое логическое выражение)! (условие) (простое логическое выражение) else (логическое выражение) 3.4.2. Примеры х = - 2 r>V\/z<q • . • .• а-+-Ь> - 5 Az - d>q\2 , . -, ... рАд\/хФу • g=-]aAbA~\c\/d\/ezDf а k< \ then s>w else Л<с if if if a then b else с then d else f then g else h<k 3.4.3. Семантика Логическое выражение является правилом для вычисления логического значения. Принципы вычисления полностью аналогичны правилам, данным в разд. 3.3.3 для арифметических выражений. 3.4.4. Типы Переменные и указатели функций, используемые в Качестве первичных логических выражений, должны 0 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0.0017 |