0100nnnn01000011 md ← ZeroExtend1(MD); IF (md = 0) THROW RESINST; spc ← SignExtend32(SPC); op1 ← SignExtend32(Rn); address ← ZeroExtend32(op1 - 4); WriteMemory32(address, spc); op1 ← address; Rn ← Register(op1);