ULINKPRO Keil, ULINKPRO Datasheet - Page 28

KIT DEBUG/TRACE UNIT HIGH SPEED

ULINKPRO

Manufacturer Part Number
ULINKPRO
Description
KIT DEBUG/TRACE UNIT HIGH SPEED
Manufacturer
Keil
Type
In-Circuit, Real-Time Debugger/Programmerr
Datasheets

Specifications of ULINKPRO

Contents
Module
For Use With/related Products
ARM7, ARM9, Cortex
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Getting Started: Creating Applications with µVision
Pointer Access Comparison
Source Code
8051
Code
25 Bytes
typedef struct { int x; int arr[10]; } sx;
int f (sx xdata *sp, int i) {
}
MOV
MOV
MOV
ADD
MOV
MOV
RLC
MOV
INC
INC
MOV
ADD
MOV
MOV
ADDC
MOV
MOVX
MOV
INC
MOVX
MOV
return sp->arr[i];
8051 devices provide byte arithmetic requiring several microcontroller
instructions for address calculation
C166, XE166, XC2000 devices provide efficient address arithmetic with
direct support of a large 16 MByte address space
ARM devices are extremely efficient with regard to pointer addressing and
always use the 32-bit addressing mode
In Cortex-Mx devices, any register can be used as a pointer to data
structures and arrays
DPL,R7
DPH,R6
A,R5
A,ACC
R7,A
A,R4
A
R6,A
DPTR
DPTR
A,DPL
A,R7
DPL,A
A,DPH
A,R6
DPH,A
A,@DPTR
R6,A
DPTR
A,@DPTR
R7,A
C166, XE166,
XC2000 Code
14 Bytes
MOV
SHL
ADD
EXTS
MOV
R4,R10
R4,#01H
R4,R8
R9,#01H
R4,[R4+#2]
Description
Return a value that is part of a struct and
indirectly accessed via pointer.
ARM 7 and ARM9
Thumb Code
6 Bytes
LSL
ADD
LDR
R0,R1,#0x2
R0,R2,R0
R0,[R0,#0x4]
Cortex-Mx
Thumb2 Code
6-Bytes
ADD
LDR
R0,R0,R1,LSL #2
R0,[R0,#4]
27

Related parts for ULINKPRO