Re: A89: Starting out assembly, need help


[Prev][Next][Index][Thread]

Re: A89: Starting out assembly, need help




In a message dated 11/29/98 9:41:57 PM Eastern Standard Time,
assets@eden.rutgers.edu writes:

> move.w #10,a0 will move 10 into
>  the lower word of a0.  On the other hand, indirect addressing moves an
>  immediate value or another register into the memory pointed to by one of
the
>  address registers (those would be a0-a7): move.w #10,(a0) (the parethesis
>  indicate indirectness) will move the word 10 into the memory addressed by
>  a0; so, if a0 was $10000, then that instruction would move 10 into
($10000).
>  The 68k is particular in indirect addressing in that you can only indirect
>  address on even bytes of memory (otherwise you get the address error
>  exception)

So this is sort of equivalent to the Indirection # in TI-Basic?

>  The pre-decrement and post-increment features of the 68k will increment or
>  decrement the address register by a word or a longword.  Pre-decrement will
>  have this effect: move.w #10,-(a0) will decrement a0 (the pointer) by a
word
>  and then move the word 10 into the new (a0).

What does decrementing the pointer by a word mean?

>  Post-increment will have the
>  effect: move.w #10,(a0)+ will move the word 10 into new (a0) and then
>  increment a0 by a word.  These two addressing methods can be used to fill a
>  large space (post-increment's faster than <move.w #10,(a0) / add.l #2,a0>)
>  and are especially useful in pushing / popping.


Follow-Ups: