Hi Michael, You make a lot of good points but the fact is that the PIC already HAS an instruction to subtract a literal from W: ADDLW. Just use ADDLW with the two's complement of the literal you want to subtract. Most assemblers will even handle it for you if you put a negative sign in front of the literal. I use it all the time. I don't know why Mchip called SUBLW by that name rather than SUBWL. I think Andy Warren has something about that on his Fast Forward Engineering Answer Page, and IIRC, it was a silly decision just to make it similar to the other mnemonics (which end in LW). Sean At 10:16 PM 5/25/01 -0500, you wrote: >The SUBLW instruction is another good example. It would have been nice (and >much more useful) had it actually been a "subtract literal from W" >instruction but it's not. It is a "subtract W from literal" instruction, >regardless of the confusing mnemonic that was chosen. Perhaps someone can >explain to me why the mnemonic is inconsistent with the way the instruction >works. It's going take some strong arguments to convince me that it's >better or cheaper or more efficient this way instead of having the mnemonic >be SUBWL. Perhaps someone can explain to me the necessity of CLRF and CLRW -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu