Need the explaination of the code given below...
Wgy not adding more than 8 real values....
L P##Measuring_values //Address of ANY-Pointer
LAR1 //Load the pointer in AR1
L B [AR1,P#1.0] //Check the type of data
L 8 //Load the code of REAL (16#08)
==I
JC calc //Jump, if the type of data = REAL
NOP 0 //Instructions, if type data <> REAL
CLR //VKE = 0
SAVE //BIE = 0
L L#-1 //Load the value, which is not apply
T #Sum
// T #Average_value
BEU //Interrupt, if the REAL-value is not apply
calc: NOP 0 //Instructions if type of data = REAL
L W [AR1,P#2.0] //Load the repeat factor in accu 1
T #quantity //Transfer to TEMP-variable for count of looping
L W [AR1,P#4.0] //Load the DB-No.
T #DB_No //Transfer to TEMP-variable
OPN DB [#DB_No] //Run time error, if the DB is not exist
L D [AR1,P#6.0] //Load the area pointer in accu 1
LAR1
L 0.000000e+000 //Load 0 in accu 1
L #quantity //Load the count value in accu 1
turn: T #Loop_count //Transfer to counter of looping (TEMP-variable)
TAK //Sum in accu 1
L D [AR1,P#0.0] //Load the field component in accu 1
+R //REAL-Addition to Sum in accu 1
+AR1 P#4.0 //Incrementation of 4 bytes in AR1
L #Loop_count //Count of looping in accu 1, and sum in accu 2
LOOP turn //Decrementation of count of looping
TAK //Change sum to accu 1
T #Sum //Transfer to output of sum
//Transfer to output of average value
SET //Set BIE-Bit to 1
SAVE
Wgy not adding more than 8 real values....
L P##Measuring_values //Address of ANY-Pointer
LAR1 //Load the pointer in AR1
L B [AR1,P#1.0] //Check the type of data
L 8 //Load the code of REAL (16#08)
==I
JC calc //Jump, if the type of data = REAL
NOP 0 //Instructions, if type data <> REAL
CLR //VKE = 0
SAVE //BIE = 0
L L#-1 //Load the value, which is not apply
T #Sum
// T #Average_value
BEU //Interrupt, if the REAL-value is not apply
calc: NOP 0 //Instructions if type of data = REAL
L W [AR1,P#2.0] //Load the repeat factor in accu 1
T #quantity //Transfer to TEMP-variable for count of looping
L W [AR1,P#4.0] //Load the DB-No.
T #DB_No //Transfer to TEMP-variable
OPN DB [#DB_No] //Run time error, if the DB is not exist
L D [AR1,P#6.0] //Load the area pointer in accu 1
LAR1
L 0.000000e+000 //Load 0 in accu 1
L #quantity //Load the count value in accu 1
turn: T #Loop_count //Transfer to counter of looping (TEMP-variable)
TAK //Sum in accu 1
L D [AR1,P#0.0] //Load the field component in accu 1
+R //REAL-Addition to Sum in accu 1
+AR1 P#4.0 //Incrementation of 4 bytes in AR1
L #Loop_count //Count of looping in accu 1, and sum in accu 2
LOOP turn //Decrementation of count of looping
TAK //Change sum to accu 1
T #Sum //Transfer to output of sum
//Transfer to output of average value
SET //Set BIE-Bit to 1
SAVE