A while ago, I was reading the book Some Assembly Required on programming assembly for the avr family of microcontrollers... Early on, it explained that the LSL ( logical shift left ) instruction was translated to an ADD instruction that essentially multiplied the register by 2. I understand why that would work, but what I don't understand is what I am reading about the LSR ( logical shift right ) instruction on Atmel's own documentation: http://www.atmel.com/webdoc/avrassembler/avrassembler.wb_LSR.html
The documentation displays the instructions opcode as, 1001 010d dddd 0110 and shows the cycle count as 1, meaning that the instruction is completed in a single clock cycle.
So, what exactly is happening here? I really can't tell.. Thanks!