Статус процессора: S:0/0 – Сarry (C) - перенос S:0/1 – Overflow (V) - переполнение S:0/2 – Zero (Z) – нулевое значение результата S:0/3 – Sign (S) – отрицательное значение результата S:5/0 – Overflow Trap – бит малой ошибки при переполнении или делении на ноль S:13 – Math Register (LO) – математический регистр (младшие 16 разрядов) S:14 – Math Register (HI) – математический регистр (старшие 16 разрядов) S:2/14 – Math Overflow Selected – разрешение двоичного сложения и/или вычитания
Математические инструкции СVZSСVZS СVZSСVZS С=0, V=0, Z, S S:13 – целая часть S:14 - остаток С, V, Z, S S:14-S:13 С=0, V, Z, S S:13 – целая часть S:14 - остаток С=0 V=0 Z S=0
Инструкция вычисления (CPT) +, -, *, | (DIV), SQR, - (NEG), NOT, XOR, OR, AND, TOD, FRD, LN, TAN, ABS, DEG, RAD, SIN, COS, ATN, ASN, ACS, LOG, e ** (XPY). С, V, Z, S
С=0 V Z S С=0 V Z S=0
«ABS» – получение абсолютного значения «SIN» – вычисление синуса (…ASN) «COS» – вычисление косинуса (…ACS) «TAN» – вычисление тангенса (…ATN) «LN» – вычисление натурального логарифма «LOG» – вычисление десятичного логарифма «XPY» - возведение в степень «NEG» - отрицание «DEG» - преобразование радиан в градусы «RAD» - преобразование градусов в радианы «MOV» - перемещение «CLR» - очистка «AND» - поразрядное «И» «OR» - поразрядное «ИЛИ» «XOR» - поразрядное исключающее «ИЛИ» «NOT» - инверсия битов «MVM» - маскируемое перемещение
Масштабирование (SCL) Rate = (Dest_MAX – Dest_Min) / (Source_MAX – Source_Min) { … } Offset = Dest_Min - Source_Min * Rate Dest_Min Source_MAX Source_Min Dest_MAX V, Z, S Dest = Source * Rate + Offset
Масштабирование (SCP) Y = Rate * X + Offset Где: Y – масштабированный выход X - вход Rate = (Scaled_MAX – Scaled_Min)/(Input_MAX – Input_Min) Offset = Scaled_Min - Input_Min * Rate Scaled_Min Input_MAX Input_Min Scaled_MAX V, Z, S
Разгон/Замедление (RMP) Структура блока «Control» TB – база времени: 0 – 0.01 сек 1 – 1 сек WF – форма: 00 – Linear 01 – Acceleration 10 – Deceleration 11 – «S»
Разгон/Замедление (RMP) Время Конечное значение Начальное значение Linear ( 00 )
Разгон/Замедление (RMP) Время Конечное значение Начальное значение Acceleration ( 01 )
Разгон/Замедление (RMP) Время Конечное значение Начальное значение Deceleration ( 10 )
Разгон/Замедление (RMP) Время Конечное значение Начальное значение «S» ( 11 )