We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

ASL

From SnesLab
Revision as of 17:45, 23 August 2024 by Xetheria (talk | contribs) (deindent cycle penalty)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Basic Info
Addressing Mode Opcode Length Speed
Accumulator 0A 1 byte 2 cycles
Absolute 0E 3 bytes 6 cycles*
Direct Page 06 2 bytes 5 cycles*
Absolute Indexed by X 1E 3 bytes 7 cycles*
Direct Page Indexed by X 16 2 bytes 6 cycles*
Flags Affected
N V M X D I Z C
N . . . . . Z C

ASL (Arithmetic Shift Left) is a 65x instruction that shifts every bit of a value left one bit (multiplication by two). The least significant bit is cleared. The most significant bit is shifted into the carry flag. The previous value of the carry flag is lost (unlike with ROL).

The size of the accumulator determines how many bits are shifted (8 or 16) not including the clearing zero and carry flag.

Syntax

ASL
ASL A
ASL addr
ASL dp
ASL addr, X
ASL dp, X

Cycle Penalties

816 asl.png

See Also

External Links