
Сообщение от
Николай Суриков
Нафига такие сложности, да ещё в эмуляции не работает. Вот функция сборки REAL 1 Сборка Реал.jpg, таким же образом можно поменять местами байты и разобрать REAL.
Код:
FUNCTION Word2_REAL : REAL
VAR_INPUT
wIn1 : WORD; (*входные переменные типа WORD из которых собираем REAL*)
wIn2 : WORD;
END_VAR
VAR
rOut : REAL;
W: ARRAY [0..1] OF WORD;
ptr_In : POINTER TO ARRAY [0..1] OF WORD;
ptr_Out : POINTER TO ARRAY[0..1] OF WORD;
END_VAR
____________________________________________
W[0]:=wIn1 ; W[1]:=wIn2 ;
ptr_In :=ADR(W);
ptr_Out := ADR( rOut);
ptr_Out^[ 0 ] :=ptr_In^[ 0 ] ; (* можно WORD_ы поменять местами, поменяв [ 0 ] и [ 1 ] *)
ptr_Out^[ 1 ] :=ptr_In^[ 1 ] ;
Word2_REAL:=rOut;