Stephen D. Barnes wrote: > I just want to be sure I really understand what happens here...please > correct me if I am wrong. > > .bss myvar, 2, 2 ;defines variable, 2 bytes long, aligned Yes. > mov #myvar, w0 ;move the contents of myvar to w0 No, it write the address of MYVAR into W0. In other words, W0 is not a pointer to MYVAR. > mov.b [w0++], w1 ;move 1 byte of w0 to w1(low byte) > and > post increment the ;"effective > address" which means the w0 low byte will now contain > ;what was the high byte before the increment? The instructions are all detailed in the manual. Since you're just asking about details of the instruction operation, you should read the manual. Briefly, this fetches the byte pointed to by W0, sticks it in the low half of W1, then increments W0 by 1. ****************************************************************** Embed Inc, Littleton Massachusetts, (978) 742-9014. #1 PIC consultant in 2004 program year. http://www.embedinc.com/products -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist