Keil Logo

DPPx Assembler Operator

Arguments
DPPx: operand


Description

The data page pointers (DPP0-DPP3) may be used to override the default page assumptions defined using the ASSUME control statement.

Each variable in your program is located somewhere in memory. The 16K page containing a particular variable is the parent page for that variable and is specified by a Data Page Pointer (DPP). Normally, the assembler tracks DPPs by means of the ASSUME control and implicitly uses the appropriate DPP when to access a variable.

Page override operators (DPP0-DPP3) override the ASSUME control and directly specify the DPP to use. To get a valid run-time address, you must ensure that the DPP is loaded with the correct base page number.

Example
ASSUME DPP2:D100

D100   SECTION DATA
       V1   DSW  1
       V2   DSW  1
D100   ENDS

C100   SECTION CODE
       MOV    DPP2,#D100        ; establish data-page addressability
       NOP               ; pipeline delay
       MOV    R10,V1    ; DPP2:V1 used per ASSUME

       MOV    DPP1,#D100        ; set up DPP1 for later override
       NOP
       MOV    R13,DPP1:V2       ; addressing per DPP1; overriding ASSUME
C100   ENDS
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.