Maxim Integrated MAX31782 User Manual
Page 183

MaximIntegrated 19-18
MAX31782 User’s Guide
Revision 0; 8/11
Once the pointer selection has been made, it remains in effect until:
• The source data pointer select bits are changed via the explicit or implicit methods described above (i .e ., another
data pointer is selected for use) .
• The memory to which the active source data pointer is addressing is enabled for code fetching using the Instruction
Pointer . Or,
• A memory write operation is performed using a data pointer other than the current active source pointer .
move
DP[1], DP[1]
; select DP[1] as the active pointer
move
dst, @DP[1]
; read from pointer
move
@DP[1], src
; write using a data pointer
; DP[0] is needed
move
DP[0], DP[0]
; select DP[0] as the active pointer
To simplify data pointer increment/decrement operations without disturbing register data, a virtual NUL destination has
been assigned to system module 6, sub-index 7 to serve as a bit bucket . Data pointer increment/decrement operations
can be done as follows with- out altering the contents of any other register:
move
NUL, @DP[0]++
; increment DP[0]
move
NUL, @DP[0]--
; decrement DP[0]
The following data pointer related instructions are invalid:
move @++DP[0], @DP[0]++
move @++DP[1], @DP[1]++
move @BP[++OFFS], @BP[OFFS++]
move @--DP[0], @DP[0]--
move @--DP[1], @DP[1]--
move @BP[--OFFS], @BP[OFFS--]
move @++DP[0], @DP[0]--
move @++DP[1], @DP[1]--
move @BP[++OFFS], @BP[OFFS--]
move @--DP[0], @DP[0]++
move @--DP[1], @DP[1]++
move @BP[--OFFS], @BP[OFFS++]
move @DP[0], @DP[0]++
move @DP[1], @DP[1]++
move @BP[OFFS], @BP[OFFS++]
move @DP[0], @DP[0]--
move @DP[1], @DP[1]--
move @BP[OFFS], @BP[OFFS--]
move DP[0], @DP[0]++
move DP[0], @DP[0]--
move DP[1], @DP[1]++
move DP[1], @DP[1]--
move OFFS, @BP[OFFS--]
move OFFS, @BP[OFFS++]