lsl form
lsl xd, xn, xm
xn: bit pattern to be shifted
xm: shift count
What does lsl do?
Multiply 5x8 using lsl
mov x20, 5 //0000 0101
mov x21, 3 //2^3 = 8
lsl x19, x20, x21 //0010 1000
What does lsr do?
15/4 using lsr
mov x20, 15 //0000 1111
mov x21, 2 //2^2 = 4
lsr x19, x20, x21 //0000 0011
If the original multiplier in binary multiplication is negative, what extra step is needed?
Subtract the multiplicand from the high-order part of the result (from the product register)
Do 2x-5 (binary multiplication, 4 bits)
11110110, check notes for procedure