Advanced Function Instruction
7-25
FUN50 P
BDIST
BYTE DISTRIBUTE
FUN50 P
BDIST
S :Starting address of source register to be distributed
N :Number of bytes to be distributed
D :Registers to store the distributed data
S, N, D may associate with V、Z、P0~P9 index register to serve
the indirect addressing application.
HR ROR DR K
Range
Ope-
rand
R0
∣
R3839
R5000
∣
R8071
D0
∣
D4095
S ○ ○ ○
N ○ ○ ○ 1~256
D ○ ○* ○
● When execution control "EN" =1 or "EN↑"( P instruction)changes from 0→1, it will perform the byte
distribution starting from S, length by N, and then store the results into D registers.
● This instruction will not act if invalid range of length.
● When communicating with intelligent peripheral in binary data format, this instruction may be applied to do
byte distribution for data transmission。
Example:
M2
EN
S :
N :
R 999
R 1000
50P.BDIST
D :
R 1500
Description:When M2 changes from 0→1, it will perform the byte distribution starting from R1000, the length is
assigned by R999, and then store the results into registers starting from R1500.
It is supposed R999=9, the results of distribution will store into R1500~R1508.
S D
High Byte Low Byte High Byte Low Byte
R1000 Byte-0 Byte-1 R1500 00 Byte-0
R1001 Byte-2 Byte-3 R1501 00 Byte-1
R1002 Byte-4 Byte-5 R1502 00 Byte-2
R1003 Byte-6 Byte-7 R1503 00 Byte-3
R1004 Byte-8 Don’t care R1504 00 Byte-4
R1505 00 Byte-5
R1506 00 Byte-6
R1507 00 Byte-7
R1508 00 Byte-8