1272
Model Conversion Instructions (Unit Ver. 3.0 or Later) Section 3-35
Precautions Once DISTC(566) has been executed with Stack Push Operation to allocate a
stack area, always specify that same length stack area in the COLLC(567)
instructions. Operation will be unreliable if a different stack area size is speci-
fied in the COLLC(567) instructions.
Be sure that the offset or stack size specified by Of does not exceed the end
of the data area when added to Bs.
The offset data in Of must be BCD.
Examples Data Collection Operation
The leftmost byte of D00200 is 0, so COLLC(567) performs the Data Collec-
tion Operation.
When CIO 000000 is ON in the following example, the contents of D00110
(D00100 + 10) will be copied to D00300 if the content of D00200 is 10 (0010
BCD). The contents of other words can be copied to D00300 by changing the
offset in D00200.
FIFO Stack Operation
The leftmost byte of Of is 9, so COLLC(567) performs the FIFO Stack Opera-
tion.
When CIO 000000 is ON in the following example, COLLC(567) allocates a
10 word stack area (since the rightmost 3 digits of Of are #010) between
D00100 and D00109. At the same time, the contents of D00101 (Bs +1) are
copied to D00300. Finally, the stack pointer is decremented by 1.
LIFO Stack Operation
The leftmost byte of Of is 8, so COLLC(567) performs the LIFO Stack Opera-
tion.
When CIO 000000 is ON in the following example, COLLC(567) allocates a
10 word stack area (since the rightmost 3 digits of Of are #010) between
D00100 and D00109. At the same time, the contents of the source word
(D00100 + stack pointer) are copied to D00300. Finally, the stack pointer is
decremented by 1.
D00110
D00100
0
D
01
0
D00200
D00101
4-digit BCD
Offset +10 words
Copied by COLLC(567).
Bs:
Bs
Of
COLLC
D00100
D00101
D00109
Stack area
Stack
pointer
Stack
data area
Bs
COLLC
Of
D
D00100
D00300
#9010
Stack area
Stack area
Allocated stack
After 1
st
execution
After 2
nd
execution
Of
9
010
0 0 0 1
5 6 7 8
0 0 0 0
FIFO
Read
5 6 7 8
1 2 3 4
0 0 0 2
D00102
D00300
1 2 3 4
5 6 7 8