GET_SINT오프셋이 있는 바이트 데이터에서 부호 있는 정수 값 읽기
이 함수는 Data의 8비트 바이트 값을 가져옵니다. 여기서 iByteOffset은 바이트의 오프셋을 지정합니다. 바이트 번호 지정은 0부터 시작되며, 0은 Data의 첫 번째 바이트를 나타냅니다.
결과는 -128~127 범위의 부호 있는 정수 값을 포함합니다. 결과 바이트 값의 부호 비트(즉, 비트 번호 7)가 상위 비트로 확장됩니다. 즉, 부호 비트가 0이면 모든 상위 비트가 0입니다. 부호 비트가 1인 경우 모든 상위 비트는 1입니다.

입력
바이트를 가져온 바이트 데이터
Data의 첫 번째 바이트(0부터 시작)를 기준으로 한 바이트 오프셋은 0 이상이어야 합니다.
출력
-128~127 범위의 부호 있는 정수 값. 결과 바이트 값의 부호 비트(즉, 비트 번호 7)가 상위 비트로 확장됩니다.
Control FPWIN Pro7이 액세스할 데이터의 유효성을 확인하지 않으므로 입력 데이터의 유효성을 확인하십시오.
최상의 성능을 얻으려면 가능한 한 일정한 입력 값을 사용하십시오!
반전 명령: SET_SINT

이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.

VAR
bStart: BOOL:=FALSE;
iResult: INT:=0;
awByteData: ARRAY [0..4] OF WORD:=[100,200,300,400,501];
iOffs: INT:=0;
END_VAR
변수 bStart가 TRUE로 설정되면 펑션이 실행됩니다.

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;