Microsoft Word - iOSAppReverseEngineering.docx

(Romina) #1

Figure 6-4 LSL


LSR Logical Shift Right, as shown in figure 6 - 5

Figure 6-5 LSR


ASR Arithmetic Shift Right, as shown in figure 6- 6

Figure 6-6 ASR


ROR ROtate Right, as shown in figure 6- 7

Figure 6-7 ROR


-^ Compare instructions


CMP R1, R2 ; Set flag according to the result of R1 - R2
CMN R1, R2 ; Set flag according to the result of R1 + R2
TST R1, R2 ; Set flag according to the result of R1 & R2
TEQ R1, R2 ; Set flag according to the result of R1 ^ R2

Compare instructions are just arithmetic or logical operation instructions that change flags,


but they don’t save the results in registers.



  • Multiply instructions


MUL R4, R3, R2 ; R4 = R3 * R2
MLA R4, R3, R2, R1 ; R4 = R3 * R2 + R1

The operands of multiply instructions must come from registers.

Free download pdf