---
title: "Data Pointer Select Register - usage clarification"
url: "https://maker.wiznet.io/forum/10854"
markdown_url: "https://maker.wiznet.io/forum/10854/md"
type: "Forum topic"
category: "MCU & Boards"
author: "eNDi"
created: "2015-02-17T10:05:55+09:00"
last_activity: "2017-05-04T08:35:15+09:00"
language: "en"
views: 846
replies: 1
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# Data Pointer Select Register - usage clarification

## Question

Asked by eNDi on 2015-02-17 in MCU & Boards.

Did I understand it right:
ID1 and ID0 in the DPS register change the behaviour of the 8051-“INC DPTR”-instruction to what is given in Table 2.3 “DPTR0, DPTR1 Operations”.
E.g.:
DPS = 0x80
DPTR0 is selected, an “INC DPTR”-instruction will decrement DPTR0,
DPS = 0x81
DPTR1 is selected, an “INC DPTR”-instruction will increment DPTR1.

## Replies

### Reply 1 by irina, 2015-04-13

DPS register is the DPTR0 / DPTR1 selector.
When the INC DPTR instruction is executed, the active DPTR isincremented or decremented according to the ID1, ID0 (DPS.7-6), and SEL (DPS.0) bits as shown.

## ID1 | ID0 | SEL | Result of INC DPTR

X | 0 | 0 | Increment DPRT0
X | 1 | 0 | Decrement DPRT0
0 | X | 1 | Increment DPRT1
1 | X | 1 | Decrement DPRT1

Regards,
Eric.

---

Source: https://maker.wiznet.io/forum/10854
