GET_SINTLettura di un valore intero con segno dai dati del byte con offset
Questa funzione ottiene il valore in byte a 8 bit di Data con iByteOffset che indica l'offset in byte. La numerazione dei byte parte da 0, che si riferisce al primo byte di Data.
Il risultato contiene il valore intero con segno nell'intervallo compreso tra -128 e 127. Il bit di segno, ovvero il bit numero 7 del valore del byte risultato, viene esteso ai bit superiori. Ciò significa che se il bit di segno è 0, allora tutti i bit superiori sono 0. Se il bit di segno è 1, tutti i bit superiori sono 1.

Ingresso
Dati del byte da cui è stato ricavato il byte
Offset di byte rispetto al primo byte di Data a partire da 0, deve essere maggiore o uguale a 0
Uscita
Valore intero con segno nell'intervallo compreso tra -128 e 127. Il bit di segno, ovvero il bit numero 7 del valore del byte risultato, viene esteso ai bit superiori.
Si prega di verificare la validità dei dati di ingresso, poiché Control FPWIN Pro7 non controlla la validità dei dati a cui si accede.
Per ottenere le migliori prestazioni, utilizzare il più possibile valori di ingresso costanti!
Istruzione inversa: SET_SINT

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
bStart: BOOL:=FALSE;
iResult: INT:=0;
awByteData: ARRAY [0..4] OF WORD:=[100,200,300,400,501];
iOffs: INT:=0;
END_VAR
Quando la variabile bStart è impostata su TRUE, la funzione viene eseguita.

BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_CONTACT,,bStart,4,3,6,5,);
B(B_F,E_GET_SINT!,,11,2,19,7,,?DEN?DData?DiByteOffset?AENO?C);
B(B_VARIN,,awByteData,9,4,11,6,);
B(B_VAROUT,,iResult,19,4,21,6,);
B(B_VARIN,,iOffs,9,5,11,7,);
L(1,0,1,7);
L(1,4,4,4);
L(6,4,11,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (bSTart) then
iResult:=GET_SINT(Data := awByteData, iByteOffset := iOffs);
end_if;