How do I perform a multiplication by 2 of the unsigned 32-bit quantity in registers r18:r19:r20:r21
where r18
is the most significant byte?
My answer is this: rol r18; rol r19; rol r20; rol r21
.
My thought process is that since this is an unsigned number, we can exclude the use of ASL
as there is no carry out in MSB. But I didn't get it right; may I know which part is wrong?