DAPL Expression Commands
DAPL provides a special notation for conversion, arithmetic, and bitwise operations that don't fit into the ordinary scheme of processing commands.
These expressions resemble an assignment statement from a procedural programming language. For example:
FLAGS = (IP4 & $0000F600) >> 10
Actually, this example defines a concurrent processing task performing operations upon all data from an input data stream (input channel pipe, channel 4). For each 16-bit value received from a digital port, the six high-order bits are retained, and the rest ignored. The six retained bits are shifted into the first six low-order bit positions. The stream of output results is placed into the pipe
Operations supported in DAPL expression tasks are:
+ - * / (arithmetic) & | ^ << >> (bitwise logic)
Operations can be performed upon values taken from shared variables, constants and pipes. Results are converted to the data type of the output pipe. Taking values from a pipe and placing them into a pipe of a different data type is an easy way to convert data streams.