ARM Machine Code (32bit: not Cortex-M) Major features of the ARM machine code Unaligned access is not allowed (like all RISC) No assignment of 32-bit constants is possible (like all RISC) There is no hardware-managed stack pointer (like all RISC) Load-multiple and store-multiple instructions Every instruction is conditionally executed The status bits are modified only optionally One operand can be shifted at no cost All addressing is register-relative Other features typical of RISC processors, but missing in ARM: Register windows «Delay slot» for jumps Zero register