22.11.2.6 メモリリング

メモリ上のデータをブロック単位でリングシフトします。
開始アドレス-終了アドレス間で、ブロック単位(指定ワード数単位)のリングシフトを行います。エラーが発生した場合、LS9150にエラーステータスを書き出します。

memring (開始アドレス, 終了アドレス, 1ブロックのワード数)

記述例1

memring ([w:[#INTERNAL]LS1000], [w:[#INTERNAL]LS1030], 10)

(パラメータ1 < パラメータ2 の場合)

10ワード単位で、データが上に移動します。

記述例2

memring ([w:[#INTERNAL]LS1030], [w:[#INTERNAL]LS1000], 10)

(パラメータ1 > パラメータ2 の場合)

10ワード単位で、データが下に移動します。

記述例3

memring ([w:[#INTERNAL]LS1000], [w:[#INTERNAL]LS1050], 10)

(データがすべて0のブロックが範囲内に存在する場合)

先頭ブロックからデータ0のブロックまでの範囲内だけで、ブロック(10ワード)単位でデータが上に移動します。データ0のブロック以降にデータが存在しても無視されます。

記述例4

memring ([w:[#INTERNAL]LS1050], [w:[#INTERNAL]LS1000], 10)

(データ0 のブロックが範囲内に存在する場合)

先頭ブロックからデータ0のブロックまでの範囲内だけで、ブロック(10ワード)単位でデータが下に移動します。データ0のブロック以降にデータが存在しても無視されます。

エラーステータス

エディタ関数名

LSエリア

エラーステータス

要因

memring ( )

LS9150

0000h

正常終了

0001h

パラメータエラー

0003h

書き込み、読み込みエラー