Topic: DMD0124

Help File Version: 2.10.0.636

SUMR - Sum a Contiguous Range


This instruction can only be used in the Expression parameter of the Calculate Expression (MATH) instruction.

 

The Sum a Range of Values (SUMR) instruction calculates the sum total of the values in the specified range of variable locations. When used with bit locations (instead of numeric locations) the SUMR instruction counts the number of bits that are ON, for example: SUMR( X0,8 ) translates to "How many are ON between X0 and X7)".

 

 

Note: Use the F9 key or click the 'three dot box' at the right edge of the parameter field to open the Default Element Selection Tool (the Element Picker or the Element Browser) or use the Down-Arrow key (Auto-Complete) on any parameter field to see a complete list of the memory locations that are valid for that parameter of the instruction.

 

Result is a numeric memory location to store the result of the calculation. This can be any writable numeric location.

 

The Expression parameter consists of all the text between the bounding parentheses. The parameter list must consist of 2 parameters separated by a comma. Each parameter is an expression which can be a constant value, a bit or numeric memory location, an arithmetic expression, and / or mathematical function or other expressions up to a maximum of 1024 characters. Expressions can be nested, so use of parentheses is recommended to ensure proper evaluation order.

 

This function has two parameters separated by a comma:

The first parameter is the first location in the range of values. This can be any readable any numeric or bit data block location, including casts and structure members (fields of heap structures are not supported).

 

The second parameter is the number of successive locations that are in the range. Note that this value is a count value, it does NOT specify the ending location. This can be any constant value from 1 to 65535, or, any regular math expression - for example (D3 - D1), or any readable numeric location.

 

If the second parameter (Range) is 0, the Result will be 0 and ST132 (Argument Out of Range) will be ON.

 

If the second parameter (Range) exceeds the size of the data block, the result will be the minimum value in the range up to the last variable in the block and Argument Out of Range (ST132) will be ON. For example, assume the block of WX locations has a range of WX0 to WX255. The result of SUMR( WX250, 10 ) would be the minimum value in the range of WX250 through WX255, and Argument Out of Range (ST132) will be ON.

 


See Also:

AVGR - Average of a Range of Values

 

MAXR - Maximum Value Across a Range of Values

 

MINR - Minimum Value Across a Range of Values

 

SUMR - Sum of a Range of Values

 

STDEVPR - Population Standard Deviation of a Range

 

STDEVR - Sample Standard Deviation of a Range

 


Related Topics:

MATH - Calculate Expression


MAX - Maximum Between Two Expressions

 

MIN - Minimum Between Two Expressions

 


Rung Example: