Advanced Function Instruction
7-83
Table Instructions
Fun No. Mnemonic Functionality Fun No. Mnemonic Functionality
100 R→T Register to table data move 107 T_FIL Table fill
101 T→R Table to register data move 108 T_SHF Table shift
102 T→T Table to table data move 109 T_ROT Table rotate
103 BT_M Block table move 110 QUEUE Queue
104 T_SWP Block table swap 111 STACK Stack
105 R-T_S Register to table search 112 BKCMP Block compare
106 T-T_C Table to table compare 113 SORT Data Sort
● A table consists of 2 or more consecutive registers (16 or 32 bits). The number of registers that comprise the
table is called the table length (L). The operation object of the table instructions always takes the register as
unit (i.e. 16 or 32 bit data).
● The operation of table instructions are used mostly for data processing such as move, copy, compare, search
etc, between tables and registers, or between tables. These instructions are convenient for application.
● Among the table instructions, most instructions use a pointer to specify which register within a table will be
the target of operation. The pointer for both 16 and 32-bit table instructions will always be a 16-bit register.
The effective range of the pointer is 0 to L-1, which corresponds to registers T
0
to T
L-1
(a total of L registers).
The table shown below is a schematic diagram for 16-bit and 32-bit tables.
● Among the table operations, shift left/right, rotate left/right operations include a movement direction. The
direction toward the higher register is called left, while the direction toward the lower register is called right, as
shown in the diagram below.
Pointer Pr Pointer Pr
4
2
B15 B0
B15 B0
(right)
B15 B0
B31 B0
T0
R0
T0 R1 R0
T1
R1
T1 R3 R2
T2
R2
T2 R5 R4
T3
R3
T3 R7 R6
T4
R4
──┐
│
│
│
│
(right)│
│
│
│
│
←─┘
T4 R9 R8
──┐
│
│
│
│
(right)│
│
│
│
│
←─┘
......
......
......
......
TL−1
RL-1
(left) T
L−1 R 2L−1 R 2L−2
(left)
Table length
{
16bit table
Table length
{
32bit table
T T