22.11.2.6 Memory Ring

Ring-shifts the memory data in blocks.
Performs ring-shift between the start and end addresses in block units (in specified word units). When an error occurs, the error status is written to LS9150.

memring ([Start Address], [End Address], Words in 1 Block)

Example expression 1:

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

(When Parameter 1 is less than Parameter 2 (P1 < P2))

Data moves upward in 10-word block units.

Example expression 2:

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

(When Parameter 1 is greater than Parameter 2 (P1 > P2))

Data moves downward in 10-word block units.

Example expression 3:

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

(When data is "0" for all the blocks in the range)

Data moves upward in 10-word block units only, from the starting block to the Data 0 block. If data exists after the Data 0 block, the data is ignored.

Example expression 4:

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

(When Data 0 block exists within the range)

Data moves downward in 10-word block units, only within the range, from the starting block to the Data 0 block. If data exists after the block with "0" data, the data is ignored.

Error Status

Editor Function Name

LS Area

Error Status

Cause

memring ( )

LS9150

0000h

Completed Successfully

0001h

Parameter error

0003h

Write/Read error