Here are a few questions on the following Coldfire MOVEA instruction.

movea.w (%a2)+,%a3 #a3=mem[a2.w]; a2=a2+2

1. Does A3 load 16 or 32 bits? I suspect all 32-bits are loaded from the sign-extended memory location pointed to by A2.

2. Does A2 increment by 2?

3. What does the "%" represent? Is it assembler specific?

Is there overlap/redundency between instructions LEA & MOVEA? Are the following eqivalent?

lea.l (%a2),%a3 #a3=mem[a2]

movea.l (%a2),%a3 #a3=mem[a2]

Tim

Dear tupdegrove,

I believe the two examples you give are equivalent.

Obviously, the lea example does not really show the usefulness of the instruction.

bye