Hola.Por lo que te entendí, podría ser así:
Compara
movf Byte1,W ;W= Byte1
subwf Byte2,W ;W = Byte2 - W = Byte2 - Byte1
btfsc STATUS,Z ;¿Son distintos?
goto SonIguales ;No.Entonces son iguales.
btfsc STATUS,C ;¿Byte2 > Byte1? (*)
goto Byte1EsMayor ;No.(Entonces Byte1 es mayor a Byte 2)
Byte2EsMayor nop ;Si.Byte2 es mayor a Byte1
(*) STATUS,C se pone a CERO SI Y SOLO SI SE PRODUCE UN UNDERFLOW, es decir que la resta da "negativa".
Entonces, si la resta da mayor a cero o igual, el bit C del registro STATUS se seteará.
Fijate que yo debería haber puesto como comentario entonces en esa linea:
btfsc STATUS,C ;¿Byte2 => Byte1?
pero como ya había comprobado mediante el Z si la resta habia dado cero, puedo eliminar el signo =, quedando:
btfsc STATUS,C ;¿Byte2 > Byte1?
Hay muchas variantes de hacer esto mísmo.
Saludos.