GFK-0467K Chapter 4 Series 90-30/20/Micro Instructions Set 4-87
4
ARRAY_MOVE (INT, DINT, BIT, BYTE, WORD)
Use the Array Move (ARRAY_MOVE) function to copy a specified number of data elements from
a source array to a destination array.
The ARRAY_MOVE function has five input parameters and two output parameters. When the
function receives power flow, the number of data elements in the count indicator (N) is extracted
from the input array starting with the indexed location (SR + SNX — 1). The data elements are
written to the output array starting with the indexed location (DS + DNX — 1). The LEN operand
specifies the number of elements that make up each array.
For ARRAY_MOVE_BIT, when word-oriented memory is selected for the parameters of the
source array and/or destination array starting address, the least significant bit of the specified word
is the first bit of the array. The value displayed contains 16 bits, regardless of the length of the
array.
The indices in an ARRAY_MOVE instruction are 1-based. In using an ARRAY_MOVE, no
element outside either the source or destination arrays (as specified by their starting address and
length) may be referenced.
The ok output will receive power flow, unless one of the following conditions occurs:
Enable is OFF.
(N + SNX – 1) is greater than LEN.
(N + DNX – 1) is greater than LEN.
_____
| |
(enable) —|ARRAY|— (ok)
| |
|MOVE_|
| |
| BIT |
| |
(source array address) —|SR DS|— (destination array address)
| LEN |
|00001|
(source array index) —|SNX |
| |
| |
(destination array index) —|DNX |
| |
| |
(elements to transfer ) —|N |
|_____|