Hola ger_va.
Ademas de las instrucciones que menciona Leon Pic, también son muy importantes los bits Z (Zero) y C (Carry) del registro STATUS, los cuales cambian de estado según el resultado de una operación matemática u operaciones booleanas (AND, XOR, IOR, etc).
Las siguientes lineas de código llegan al mismo resultado del ejemplo anterior pero utilizando operaciones booleanas y el bit Z (Zero) del registro STATUS, en este caso contador varia de 18 a 9 para hacerlo mas interesante
contador equ 0x20
inicio
movlw 0x12
movwf contador
repito
decf contador
movlw 0x09
xorwf contador, 0
btfss STATUS, Z
goto repito
goto pulsador
Para aprender estas y muchas mas instrucciones te recomiendo que tengas a mano el
Set de Intrucciones" de los PIC de gama media, como así también la hoja de datos correspondiente al microcontrolador que quieras utilizar.
Saludos!