The 17C series has cpfseq Compare file register to wreg and skip if equal cpfsgt This is the greater than one cpfslt This is the less than I think the 18s do this too. Just the 16s and earlier you have to use subtracts to do compares GL, Walt... -----Original Message----- From: Martin McCormick [mailto:martin@DC.CIS.OKSTATE.EDU] Sent: Tuesday, February 22, 2000 2:27 PM To: PICLIST@MITVMA.MIT.EDU Subject: > < Problems I have been on this list for about 6 years, I think, and am working on my first actual PIC program. One of the things I discovered that kind of surprised me was the lack of any instructions that can test to see if some value is => or < some other value. Testing to see if 2 values are exactly equal is easy with the xorwf instruction because the result is 0 if the two values are the same. It finally hit me that what I could do is to take the value I am testing against, get the 2's compliment by xorwf'ing it with 0xff and then adding 1, and then taking that value to add to the unknown value to see if the carry sets. If it sets, the unknown value was = or > the test value. This works fine, but am I missing something more simple? My previous assembler coding has been in the Motorola 68HC11, 8086, and 6502 assemblers. There are instructions that branch on carry set or clear and the status of the Z flag as well as some branches that work on signed arithmetic and others that work on unsigned values. I realized that the PIC instructions do exactly the same thing, but the details are more visible. There is nothing like actually getting in there and designing a project to let one really learn the instruction set. Martin McCormick WB5AGZ Stillwater, OK OSU Center for Computing and Information Services Data Communications Group