TODOPIC
Microcontroladores PIC => Almacén del Assembler => Mensaje iniciado por: kuku_jerez en 17 de Agosto de 2005, 03:05:00
-
Me gustaria saber como puedo comparar los contenidos de dos registros. Se hacerlo con un registro y una constante pero con el contenido de dos direcciones de memoria no me aclaro. Podeis por favor echarme un cable. Muchas gracias a todos y cordiales saludos desde España, Burgos.
-
Hola, si lo que quieres es q te diga si 2 registros son iguales o no puedes hacer lo siguiente:
Var1 res 2 ; no me acuerdo bien como se declaran variables 
Var2 res 2
;demas codigo de programa
movf var1,w ; w= var1
subwf var2,w ; w= var2-var1 ; Si w=0 son iguales entonces Z=1
btfsc STATUS,Z ; si Z=0 => no_son_iguales; Z=1 => son_iguales
goto son_iguales
goto no_son_iguales
;;;;;;;;;;;;;;;;;;;;;;
Espero te aclare lo que necesitas
..... Un abrazo, nos vemos 
-
Gracias pero lo que realmente me gustaría saber es la forma de conocer si alguno de los dos registros es mayor que el otro o viceversa. Siento no haberlo especificado en mensaje primero. Gracias y a ver si podeis ayudarme. Saludos desde Burgos.
-
Hola, si lo que quieres sabes es cual es mayor y menor, haces lo mismo, pero cambias al final esto...
Var1 res 2 ; no me acuerdo bien como se declaran variables
Var2 res 2
;demas codigo de programa
movf var1,w ; w= var1
subwf var2,w ; w= var2-var1 ; Si la resta es positiva C=1
btfsc STATUS,C ; si C=0 => var1>var2; C=1 => var1<var2
goto son_iguales
goto no_son_iguales
;;;;;;;;;;;;;;;;;;;;;;
Espero se sirva....
Un abrazo... nos vemos