I presume that you sort of parse the possible value in your general purpose register and have various actions taken on various values? Is that right? in that case you could do two things 1. create a lookup or branche off table of the 8 possible actions. 2. load the value in the genral purpose register in W and test its value with xorlw movfw GenPurpReg, W ; suppose this value is 5 xorlw 5 ; if the value is 5 then the result is 0 skpnz ; test the zero flag (MPLAB assembler short for bftsc STATUS, Z) goto ...... ; do something start the next tet sequence...... Henk Tobbe VK2GWK / PA0ADC > >I have a value stored in the FileRegister 0x27 < General Purpose Register >>. That value is always between 0 and 7 (both inclusive). This value will >be dynamically varying during program execution. I need to use this value >in the instruction BTFSS. How do I use it as required? Are there any other >methods that can be used to skip instructions based on a bit, with the bit >position dynamically varying during program execution? > >Regards, >Somasundaram.