Operations:

Format

Syntax:

Operation:

Operands:

Architecture revision

Opcode

1

ld.d Rd, Rp++

Rd+1:Rd = *(Rp);
Rp = Rp + 8;
d ∈ {0, 2, 4, …, 14}
p, b, i ∈ {0, 1, …, 15}

Rev1+

101

Rp

10000

Rd

1

3

4

5

3

1

2

ld.d Rd, --Rp

Rp = Rp - 8;
Rd+1:Rd = *(Rp);
d ∈ {0, 2, 4, …, 14}
p, b, i ∈ {0, 1, …, 15}

Rev1+

101

Rp

10001

Rd

0

3

4

5

3

1

3

ld.d Rd, Rp

Rd+1:Rd = *(Rp);
d ∈ {0, 2, 4, …, 14}
p, b, i ∈ {0, 1, …, 15}

Rev1+

101

Rp

10000

Rd

0

3

4

5

3

1

4

ld.d Rd, Rp[disp]

Rd+1:Rd = *(Rp + (SE(disp16)));
d ∈ {0, 2, 4, …, 14}
p, b, i ∈ {0, 1, …, 15}

Rev1+

111

Rp

01110

Rd

0

disp16

3

4

5

3

1

16

5

ld.d Rd, Rb[Ri<<sa]

Rd+1:Rd = *(Rb + (Ri << sa2));
d ∈ {0, 2, 4, …, 14}
p, b, i ∈ {0, 1, …, 15}

Rev1+

111

Rb

00000

Ri

0000001000

sa2

Rd

3

4

5

4

10

2

4

Description

Reads the doubleword memory location specified.

Status Flags:

Q:

Not affected.

V:

Not affected.

N:

Not affected.

Z:

Not affected.

C:

Not affected.

Note:

Format I and II: If Rd = Rp, the result is UNDEFINED.

If Rd = Rp+1, the result is UNDEFINED.