Hi Glenn. > First, refer to the documentation for the RRF and RLF instructions in > MicroChip's Mid-Range MCU manual. I have a question about the contents > of the W register after either of these instructions are executed. The > examples (pages 29-36 and 29-37) show that the contents of W are not > defined prior to executing the instruction, but then they show that W > contains 0x17 after execution. The W reg is not the destination for the > instruction, which is given as RRF INDF,1. The bit-shifted value ends up > in the register whose pointer is in FSR, just as I expect. What I do not > expect or understand is why W would contain a value that doesn't have > any obvious relationship to the contents of the destination register. RRF temp,F(1) will execute operation on temp and place result to temp. W register wont change in this case. ( If it was shown as 0x17 after execution it was 0x17 before that ) Applicable to any operation which places result back to register. RRF temp,W(0) will execute operation on temp and place result to W. temp register wont change in that case. Applicable to any operation which places result to W. About the rest of your questions 1. Visit piclist.com and search for most of your answers. 2. Visit Olin's www.embedinc.com There are some useful stuff about macroses as well. Cheers. Dmitriy. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist