PS. You got two replys to this Bill because your personal address comes up when doing just a 'reply' using OE. Oh. Yeah, my mail agent insists on adding the "reply-to" field if I customize the From: line at all. I guess I'll have to fix it :-( The three addressing modes (in a nut shell) are: 1) Immediate - simply loads a data value into a reg 2) Direct - loads a value from/to a register into to/from a memory location and 3) Indirect - uses a value in a reg as an *address* into memory. *This* is your pointer functionality ... Hmmph. The processor I grew up on had immediate, direct, and INDEXED, the last where the "address" field was used as a constant and added to the value of a register to get a final memory address. There was also an "indirect" bit that meant "once you get a memory address, look in that memory location for ANOTHER set of index/offset/indirect bits and do the "effective address calculation" AGAIN to find the next memory address to look at. Repeat as many times as you want. (Ie "indexed" had addresses in registers, "indirect" had addresses in MEMORY.) Now THAT'S "indirect" addressing. Infinite loops in less than one instruction. Doubly indexed arrays (perhaps sparse) implemented in hardware. I think I actually used one-level indirection with index registers on both calculations once. Shudder. (single indirect addressing without multiple indexing was pretty common. It saved you the trouble of having to load addresses into registers...) BillW -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body