Addressing Modes — DIR
Instructions that use direct addressing can only read from or write to memory locations $00 to $FF.
All read-modify-write instructions support direct addressing…
ASL $00 ASR $FF CLR $02 COM $FD DEC $04 INC $FB LSL $06 LSR $F9 NEG $08 ROL $F7 ROR $0A TST $F5
All instructions that support extended addressing also support direct addressing.
Notes:
Direct addressing is like a simplified form of extended addressing. It allows any location between $0000 and $00FF to be read from or written to by specifying only the lower eight address bits. Direct mode instructions execute in one less cycle and require one less byte of storage than their extended mode counterparts.
Some instructions, like test, shift, rotate, complement, negate, decrement, and increment have direct, but not extended, mode forms. This may seem to be an omission from the 68HC05, but careful consideration reveals that this is not the case.
Every instruction that has a direct, but not extended, mode form performs a read-modify-write operation. The targets for these instructions must be on-chip RAM or peripheral control registers. Most RAM on 68HC05 devices is located below address $00FF. Similarly, on-chip peripheral registers are mapped starting at address $0000.
Because the vast majority of read-modify-write operations will target addresses between $0000 and $00FF, the lack of extended addressing (as well as indexed addressing with 16-bit offsets) does not impair device functionality.