ecosnos.ru |
Главная Микроустройства: номенклатура изделий электронной промышленности 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 [ 72 ] 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 А = А + (В: = С + D) - (Е: = F/G); Приведенный оператор присваивания эквивалентен следующим трем операторам: А : = А + (С + D) - (F/G); В : = С + D; Е : = F/G; Для определения адреса памяти некоторой переменной используют знак точки, например: . Z, . Q и т. д. Общая форма точечного оператора; (переменная) (константа) (список констант) Точечный оператор позволяет использовать адрес некоторой области памяти для доступа к данным или для размещения базированных данных. Псевдоперемениые INPUT и OUTPUT служат для указания операций ввода и вывода; INPUT ((число)) OUTPUT ((число)), где (число) - определяет логический номер устройства ввода или вывода. Например, утверждение OUTPUT (6) = Z; определяет вывод значения байтовой переменной Z на устройство 6. Имя псевдопеременной INPUT должно появляться справа от символа присваивания в выражении, а имя псевдопеременной OUTPUT - слева от символа присваивания. Машиино-зависимые средства языка. Массив MEMORY (массив типа BYTE) является массивом, длина которого не определена и который представляет свободную память. Обращения к MEMORY могут быть индексированными. Максимальный индекс зависит от конфигурации системы и от объема программы. Обращение, MEMORY - это адрес начала свободной области памяти. Переменная STACKPTR - переменная типа ADDRESS, обеспечивающая доступ к указателю стека микропроцессора. Процедуры CARRY, ZERO, SIGN и PARITY (все типа BYTE) возвращают логические величины апиаратно устанавливаемых флажков переноса, пуля, знака и четности, соответственно. Процедуры циклического сдвига с переносом SCL и SCR - встроенные процедуры, тип которых зависит от типа значения выражения, являющегося фактическим параметром. Вызов функций осуществляется следующим образом: \ SCL (пар 1, пар 2) SCR (пар 1, пар 2), где пар 1 - последовательность битов, предназначенная для выполнения сдвигов, пар 2 - счетчик сдвигов. Последовательность битов циклически сдвигается влево или вправо с учетом счетчика сдвигов. Управление последовательностью действий. Операторы GOTO изменяют последовательный порядок выполнения операторов, передавая управление в указанное место программы. Форма оператора следующая: GOTO (метка). Метка может быть константой-меткой цлн переменной-меткой. В первом случае, метка - это идентификатор или число, которые являются меткой помеченного оператора в программе или абсолютным адресом памяти, соответственно. Во втором случае - это переменная, которая содержит вычисленный адрес памяти, которому передается управление. Оператор DO используют для организации простой DO-rpyn-пы, DO-WHILE-группы, итеративной DO-группы и pO-CASE группы. Простая DO-rpynna имеет форму: DO; (оператор 1); (оператор 2); (оператор ;,>; Простая DO-rpynna служит для объединения последовательности операторов в одну программную единицу, которая может рассматриваться как одиноператор, например: IF А<=В THEN DO; А:=В+1; С:.= E/F; GOTO Ml; END; ELSE DO; B: = A- 1; C: = E; END; DO-WHILE-rpynna имеет следующую форму: DO WHILE (выражение); (оператор 1); (оператор 2-); (оператор п); END; Последовательность операторов выполняется до тех пор, пока результатом выражения не будет величина, крайний правый бит которой равен 0; тогда выполнение группы операторов пропускается и управление передается следующему оператору, Напримео. при /=1 группа операторов будет выполняться 5 раз:. DO WHILE / < = 5; М (I) = М (/) + М (/ + 1); 1= i+u END; Общая форма итеративной DO-групиыследующая: DO (переменная) = (выражение 1) ТО (выражение 2> BY (выражение 3) (оператор 1); (оператор 2); (оператор п); END; Вычисляется выражение 1 и сравнивается с выражением 2. Если значение выражения 1 меньше или равно значению выражения 2, то выполняются операторы в группе. Когда достигается one- ратор END, то значение переменной увеличивается на величину, равную значению выражения 3, и проверка повторяется. Последовательность операторов в группе выполняется несколько раз до тех пор, пока значение выражения I пе будет больше, чем значение выражения 2. DO-CASE-rpynna имеет следующую стандартную форму: DO CASE (выражение N); (оператор 1); (оператор 2); (оператор п); END; Вычисляется выражение, следующее за ключевым словом CASE. Значение выражения N используется для выбора одного из операторов в группе. Так при N = О выполняется оператор 1, при N = 1 выполняется оператор 2 и т. д. Если значение N больше п-1, то ие выполняется ни один оператор в группе. Любой оператор в группе выполняется не более одного раза, после чего управление передается за пределы DO-CASE.гpyппы: DO CASE /-fl; А: = В -f- С; А: = В + C/D; END; Если 1 - 0, то будет выполнен оператор присваивания А = В -Ь + C/D. Оператор IF имеед следующий формат: IF (выражение) THEN (оператор 1) ELSE (оператор 2) Если в результате вычисления выражения полученное значение содержит I в младшем разряде, то выполняется оператор 1, иначе - оператор 2. Затем управление передается.следующему оператору, если только этот порядок не нарушается выполнением операторов 1 или 2 (например, выполнение оператора GOTO) IF А < В THEN GOTO М2; ELSE GOTO Ml; Вместо операторов I и 2 конструкция IF может содержать DO-группы, что, в целом, увеличивает мощность оператора. Операторы управления прерыванием. Имеется два оператора для управления механизмом прерывания: ENABLE и DISABLE. Оператор ENABLE приводит систему прерывания в состояние разрешено , а DISABLE - запрещено . Процедуры н функции. Объявление процедуры в ПЛ/М имеет следующий вид: (имя): PROCEDURE [((список пара.ме!ров))] [(тип}] [(атрибуты)]; (оператор 1); (оператор 2); (оператор п); END [(имя)]; |