Puede utilizar los siguientes modificadores en Lista de instrucciones.
C |
con JMP, CAL, RET: |
La instrucción sólo se ejecutará si el resultado de la expresión anterior es TRUE. |
N |
con JMPC, CALC, RETC: |
La instrucción sólo se ejecutará si el resultado de la expresión anterior es FALSE. |
N |
con operadores según la tabla Operadores siguiente (N en la columna Modificadores) |
Negación del operando (no del acumulador). |
( |
con operadores según la tabla Operadores siguiente (( [paréntesis izquierdo] en la columna Modificadores) |
Se utiliza en operandos complejos. Para obtener más información, consulte la lista de casos de uso de operandos complejos. |
En la siguiente tabla se muestran los operadores que se pueden utilizar en combinación con los modificadores especificados.
El acumulador guarda el valor actual, resultante de la operación anterior.
Operador |
Modificadores |
Significado |
Ejemplo |
---|---|---|---|
LD |
N |
Carga el valor (negado) del operando en el acumulador. |
|
ST |
N |
Guarda el contenido (negado) del acumulador en la variable de operando. |
|
S |
– |
Establece el operando (tipo BOOL) en TRUE cuando el contenido del acumulador es TRUE. |
|
R |
– |
Establece el operando (tipo BOOL) en FALSE cuando el contenido del acumulador es TRUE. |
|
AND |
N,( |
AND a nivel de bit del acumulador y el operando (negado). |
|
OR |
N,( |
OR a nivel de bit del acumulador y el operando (negado). |
|
XOR |
N,( |
OR a nivel de bit exclusivo del acumulador y el operando (negado). |
|
NOT |
– |
Negación a nivel de bit del contenido del acumulador. |
– |
ADD |
( |
Suma de acumulador y operando; el resultado se copia en el acumulador. |
|
SUB |
( |
Resta de acumulador y operando; el resultado se copia en el acumulador. |
|
MUL |
( |
Multiplicación de acumulador y operando; el resultado se copia en el acumulador. |
|
DIV |
( |
División de acumulador y operando; el resultado se copia en el acumulador. |
|
GT |
( |
Verifica si el acumulador es mayor que el operando; el resultado (BOOL) se copia en el acumulador; > |
|
GE |
( |
Verifica si el acumulador es mayor o igual que el operando; el resultado (BOOL) se copia en el acumulador; >= |
|
EQ |
( |
Verifica si el acumulador es igual que el operando; el resultado (BOOL) se copia en el acumulador; = |
|
NE |
( |
Verifica si el acumulador no es igual que el operando; el resultado (BOOL) se copia en el acumulador; <> |
|
LE |
( |
Verifica si el acumulador es menor o igual que el operando; el resultado (BOOL) se copia en el acumulador; <= |
|
LT |
( |
Verifica si el acumulador es menor que el operando; el resultado (BOOL) se copia en el acumulador; < |
|
JMP |
C, CN |
Salto incondicional (condicional) a la etiqueta
|
|
CAL |
C, CN |
Llamada incondicional (condicional) de un PROGRAM o FUNCTION_BLOCK
|
|
RET |
C, CN |
Retorno incondicional (condicional) de la POU y salto hacia atrás a la POU de llamada
|
|
) |
– |
Evaluar operación diferida |
– |
Consulte también Operadores IEC y Trabajar en el editor IL para obtener información sobre cómo utilizar y gestionar múltiples operandos, operandos complejos, llamadas de función/método/bloque de funciones/programa/acción y saltos.
Programa IL de ejemplo con diversos modificadores:
LD TRUE load TRUE to accumulator
ANDN bVar1 execute AND with negative value of bVar1
JMPC m1 if accum. is TRUE, jump to label "m1"
LDN bVar2 store negated value of bVar2...
ST bRes ... in bRes
___________________________________________________________
m1:
LD bVar2 store value of bVar2...
ST bRes ... in bRes
En la tabla se enumeran los casos de uso de los operandos:
Caso de uso |
Descripción |
Ejemplos |
---|---|---|
Varios operandos para un solo operador |
Opciones
|
|
Operandos complejos |
Para un operando complejo, introduzca el paréntesis izquierdo Introduzca el paréntesis derecho en la primera columna en una fila separada seguido de las entradas de operando en las filas siguientes. |
La cadena rota un carácter con cada ciclo:
|
Llamada de bloque de funciones, llamada de programa |
Fila 1:
Filas siguientes:
Según el estándar IEC, no se permiten en este caso expresiones complejas. Este tipo de construcciones de asignan al bloque de funciones o al programa antes de que sean llamados. |
|
Llamada de función |
Fila 1:
Fila 2:
El valor de retorno se escribe en el acumulador. Fila 3:
|
|
Llamada de acción |
Similar a la llamada de bloque de funciones o de programa. El nombre de la acción se añade al nombre de la instancia del bloque de funciones o del programa. |
|
Salto |
|
|