Note
Rules for data copy operations
• To copy the Bool data type, use SET_BF, RESET_BF, R, S, or output coil (LAD)
(Page 230)
• To copy a single elementary data type, use MOVE
• To copy an array of an elementary data type, use MOVE_BLK or UMOVE_BLK
• To copy a structure, use MOVE
• To copy a string, use S_MOVE (Page 346)
• To copy a single character in a string, use MOVE
• The MOVE_BLK and UMOVE_BLK instructions cannot be used to copy arrays or
structures to the I, Q, or M memory areas.
MOVE_BLK and UMOVE_BLK instructions differ in how interrupts are handled:
● Interrupt events are queued and processed during MOVE_BLK execution. Use the
MOVE_BLK instruction when the data at the move destination address is not used within
an interrupt OB subprogram or, if used, the destination data does not have to be
consistent. If a MOVE_BLK operation is interrupted, then the last data element moved is
complete and consistent at the destination address. The MOVE_BLK operation is
resumed after the interrupt OB execution is complete.
● Interrupt events are queued but not processed until UMOVE_BLK execution is complete.
Use the UMOVE_BLK instruction when the move operation must be completed and the
destination data consistent, before the execution of an interrupt OB subprogram. For
more information, see the section on data consistency (Page 198).
ENO is always true following execution of the MOVE instruction.
Table 8- 72
ENO status
ENO
Condition
1
No error
0
Either the source (IN) range or the destination (OUT)
range exceeds the available memory area.
S7-1200 Programmable controller
System Manual, V4.2, 09/2016, A5E02486680-AK
Result
All COUNT elements were successfully copied.
Elements that fit are copied. No partial ele-
ments are copied.
Basic instructions
8.6 Move operations
267
Need help?
Do you have a question about the SIMATIC S7-1200 and is the answer not in the manual?