Introduction to ARM
Organisation
ARM has a three-address format:
- Rd (destination register)
- Rn (source register)
- Rm (source register)
Before being used Rm is passed through the barrel shifter: a functional unit which can rotate and shift values. The result of this is called Operand2.
Rn is used directly.
The two operands are processed by the ALU and the result written to Rd.



Although it’s a register, we show the CPSR separately on the diagram to indicate that it may be used in both the barrel shifter and the ALU stages.