title: ARM-Assembly: Arithmetic Shift / Logical Shift
body: <p>I'm a bit stuck finding out in which way those 2 operations are different. So I read that Arithmetic shift is basically the same as Logical with the only difference, that it somehow keeps the highest or signed bit.</p>
  
  <p>So when I do LSL #2 on 101110 assuming that this binary is a unsigned one, the result would be: 111000 and the carry bit would be set in the CPSR, right?</p>
  
  <p>When I perform ASL #2 on the same number, what would be the result and how does it keep the signed bit? What about ASR #2 on the above binary? Would the result be 101011?</p>
  
  <p>Unfortunately I've only found a really rough description about Arithmetic shift. Thanks in advance!</p>