Divisione aritmetica modulare, resto memorizzato nella variabile di uscita
MOD divide il valore della prima variabile di ingresso per il valore della seconda. Il resto della divisione integrale (p.es. 5 : 2 = 2, resto = 1) viene scritto nella variabile di uscita.
Ingresso
1° ingresso: dividendo
2° ingresso: divisore
Uscita
Uscita come ingresso: resto
Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.
VAR
dividend: INT:=11;
divisor: INT:=4;
remainder: INT:=0;
END_VAR
In questo esempio vengono utilizzate variabili. Potete anche utilizzare costanti per le variabili di ingresso. Il dividendo (11) viene diviso per il divisore (4). Il resto (3) della divisione viene scritto in remainder.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 3 ;
NETWORK_BODY
B(B_F,MOD!,Instance,9,0,14,3,,?D?D?C);
B(B_VARIN,,dividend,7,0,9,2,);
B(B_VARIN,,divisor,7,1,9,3,);
B(B_VAROUT,,remainder,15,0,17,2,);
L(14,1,15,1);
L(1,0,1,3);
END_NETWORK_BODY
END_NET_WORK
END_BODY
remainder:= dividend MOD divisor;