You could try something like the following. It expands on Bernie's program. Like his, your values to add up should be stored starting at V4000. The pointer will live at V2000 and the totalized value will be stored as a Double at V2002. C0 should be turned on for one scan to start the process. C1 will indicate when the totalizing calculation is finished.
PLC 06
// Rung 1
// Address 0
#BEGIN COMMENT
"C0 should be turned on for one scan to start the process. This rung initializes the pointer "
"and performs the first addition (acutally it just moves the first value to the destination "
"address.)"
#END
STR C0
LDA O4000
OUT V2000
LDD P2000
OUTD V2002
// Rung 2
// Address 5
#BEGIN COMMENT
"If the pointer is still less than the final pointer position (V4166 or 876 in hex), it increments "
"the pointer twice (needed because we are adding doubles), LDDs the current total, "
"ADDDs the value that the pointer is pointing to and OUTDs it to the current total Vmem."
#END
STRN V2000 K876
INCB V2000
INCB V2000
LDD V2002
ADDD P2000
OUTD V2002
// Rung 3
// Address 14
#BEGIN COMMENT
"This rung turns on a bit to indicate that the calculation process is finished. You can use "
"this bit to avoid using a value that isn't fully totaled yet."
#END
STR V2000 K876
OUT C1
// Rung 4
// Address 17
NOP
#BEGIN ELEMENT_DOC
"C1","","","Calculation finished"
"V2000","","","Pointer"
"V2002","","","Total of values"
"P2000","","","Pointer"
#END