概要
デバイスのメモリを一括コピーします。パラメータ2で指定したコピー元アドレスから、パラメータ3で指定したワード数分のデータをパラメータ1で指定したコピー先アドレスにコピーします。
ワード数は1~640までです。この_memcpy_EXでは、コピー元アドレス、コピー先アドレス、ワード数をそれぞれ間接的に指定することができます。
書式
_memcpy_EX (コピー先アドレス, コピー元アドレス,ワード数)
パラメータ1 : デバイスアドレス + テンポラリアドレス
パラメータ2 : デバイスアドレス + テンポラリアドレス
パラメータ3 : 数値、内部デバイス、テンポラリアドレス(パラメータ3に設定できる範囲は1~640です。)
記述例
[t:0000]=10、[t:0001]=20
_memcpy_EX ([w:[#INTERNAL]LS0100]#[t:0000], [w:[PLC1]D0100]#[t:0001], 5)
上記の例は、D0120 から5 ワード分読み出して、LS0110 ~ LS0114 に書き込まれます。
コピー元の範囲とコピー先の範囲が重なった場合、重なった部分のデータは以下のように書き替わります。
例 : LS101~LS104の4ワードをLS100~LS103にコピーする場合
コピー先への書き込みは、前のアドレス(小さいアドレス)の方から行われます。
例 : LS100~LS103の4ワードをLS101~LS104にコピーする場合
コピー先への書き込みは、後アドレス(大きいアドレス)の方から行われます。