+ : suma de dos operandos
- : resta de dos operandos
* : multiplicación de dos operandos
/ : división de dos operandos
DEC: decremento de un operando
ABS: valor absoluto de un operando
SQRT: raíz cuadrada de un operando
REM: resto de la división de 2 operandos
Operadores
+, - , * , / , REM
Op1:=Op2 Operador Op3
SQRT, ABS
Op1:=Operador(Op2)
INC, DEC
Operador Op1
Reglas de utilización
Reglas de utilización
. Suma:: rebasamiento de capacidad durante la operación, si el resultado excede los límites:
-32768 o +32767 para un operando de simple longitud,
-2 147 483 648 o +2 147 483 647 para un operando de doble longitud.
El bit %S18 (overflow) se pone a 1. El resultado es pues no significativo. El programa de usuario efectúa la gestión del bit %S18.
Si %MW1 =23241 y %MW2=21853, el resultado real (45094) no puede expresarse en una palabra de 16 bits; el bit %S18 se pone a 1 y el resultado obtenido (-20442) es erróneo. En este ejemplo, cuando el resultado es superior a 32767, su valor permanece igual a 32767.
. Multiplicación:
Rebasamiento de capacidad durante la operación.
Si el resultado excede la capacidad de la palabra de almacenamiento, el bit %S18 (overflow) se pone a 1 y el resultado es no significativo.
. División/resto de la división:
División por 0.
Si el divisor es igual a 0, la división es imposible; el bit sistema %S18 se pone a 1 y el resultado es erróneo.
Rebasamiento de capacidad durante la operación.
Si el cociente de la división excede la capacidad de la palabra de almacenamiento, el bit %S18 se pone a 1.
. Extracción de la raíz cuadrada:
Sólo se extraen raíces cuadradas de valores positivos. El resultado es pues siempre positivo. Si el operando de la raíz cuadrada es negativo, el bit sistema %S18 se pone a 1 y el resultado es erróneo.
Nota
- Cuando el resultado de una operación no es un entero (en una división o raíz cuadrada), el resultado se trunca (se redondea al entero inferior siguiente).
- El programa de usuario se encarga de la gestión del bit sistema %S18. El autómata lo pone a 1; para que pueda utilizarse de nuevo, el programa debe ponerlo a 0.
Lenguajes IL y LD
Operandos
Nota: no es posible utilizar las operaciones INC y DEC en expresiones numéricas.