Convert ints to a dint – Rockwell Automation Logix5000 Controllers Controller Information and Status Programming Manual User Manual
Page 22

Chapter 2 Determine controller memory information
Convert INTs to a DINT
The MSG instruction returns each memory value as two separate INTs.
•
The first INT represents the lower 16 bits of the value.
•
The second INT represents the upper 16 bits of the value.
To convert the separate INTs into one usable value, use a
Copy (COP) instruction.
In this operand
Specify
Which means
Source
First INT of the 2 element pair
(lower 16 bits)
Start with the lower 16 bits.
Destination
DINT tag in which to store the 32-
bit value
Copy the value to the DINT tag.
Length
1
Copy 1 times the number of bytes in the Destination data
type. In this case, the instruction copies 4 bytes (32 bits),
which combines the lower and upper 16 bits into one 32-
bit value.
In the following example, the COP instruction produces the 32-bit value that
represents the amount of free I/O memory, in 32-bit words.
Example:
Convert INTs to a DINT.
•
Elements 3 of INT_array is the lower 16 bits of the amount of free I/O memory. Element 4 is the
upper 16 bits.
•
Memory_IO_Free is a DINT tag (32 bits) in which to store the value for the amount of free I/O
memory.
•
To copy all 32 bits, specify a Length of 1. This tells the instruction to copy 1 times the size of the
Destination (32 bits). This copies both element 3 (16 bits) and element 4 (16 bits) and places the 32-
bit result in Memory_IO_Free.
22
Rockwell Automation Publication 1756-PM015F-EN-P – October 2014