LSR          LSR Shift right one bit (memory or accumulator)          LSR
                   +-+-+-+-+-+-+-+-+
  Operation:  0 -> |7|6|5|4|3|2|1|0| -> C               N V - B D I Z C
                   +-+-+-+-+-+-+-+-+                    0 . . . . . / /
  +----------------+-----------------------+---------+---------+----------+
  | Addressing Mode| Assembly Language Form| OP CODE |No. Bytes|No. Cycles|
  +----------------+-----------------------+---------+---------+----------+
  |  Accumulator   |   LSR A               |   $4A   |    1    |    2     |
  |  ZeroPage      |   LSR $FF             |   $46   |    2    |    5     |
  |  ZeroPage,X    |   LSR $FF,X           |   $56   |    2    |    6     |
  |  Absolute      |   LSR $FFFF           |   $4E   |    3    |    6     |
  |  Absolute,X    |   LSR $FFFF,X         |   $5E   |    3    |    7     |
  +----------------+-----------------------+---------+---------+----------+
  For penalty cycles on the 65816, check the desired addressing mode.
What it does: Shifts the bits in the Accumulator or in a byte in memory to the right, by one bit. A zero is stuffed into bit 7, and bit 0 is put into the carry flag.
Major uses: To divide a byte by 2. In combination with the ROR instruction, LSR can divide a two-byte or larger number. LSR:LSR:LSR:LSR will put the high four bits (the high nybble) into the low nybble (with the high nybble replaced by the zeros being stuffed into the seventh bit and then shifted to the right).