ASL ASL Shift Left One Bit (Memory or Accumulator) ASL +-+-+-+-+-+-+-+-+ Operation: C <- |7|6|5|4|3|2|1|0| <- 0 N V - B D I Z C +-+-+-+-+-+-+-+-+ / . . . . . / / +----------------+-----------------------+---------+---------+----------+ | Addressing Mode| Assembly Language Form| OP CODE |No. Bytes|No. Cycles| +----------------+-----------------------+---------+---------+----------+ | Accumulator | ASL A | $0A | 1 | 2 | | ZeroPage | ASL $FF | $06 | 2 | 5 | | ZeroPage,X | ASL $FF,X | $16 | 2 | 6 | | Absolute | ASL $FFFF | $0E | 3 | 6 | | Absolute,X | ASL $FFFF,X | $1E | 3 | 7 | +----------------+-----------------------+---------+---------+----------+ For penalty cycles on the 65816, check the desired addressing mode. 4510 Versions: +----------------+-----------------------+---------+---------+----------+ | Addressing Mode| Assembly Language Form| OP CODE |No. Bytes|No. Cycles| +----------------+-----------------------+---------+---------+----------+ | ZeroPage | ASL $FF | $06 | 2 | 4r | | Accumulator | ASL A | $0A | 1 | 1s | | Absolute | ASL $FFFF | $0E | 3 | 5r | | ZeroPage,X | ASL $FF,X | $16 | 2 | 4r | | Absolute,X | ASL $FFFF,X | $1E | 3 | 5pr | +----------------+-----------------------+---------+---------+----------+ p Add 1 if page boundary is crossed. r Add 1 if clock speed is at 40 MHz s Instruction requires 2 cycles when CPU is run at 1MHz or 2MHz