TODOPIC
Microcontroladores PIC => Almacén del Assembler => Mensaje iniciado por: black_flowers en 21 de Marzo de 2007, 18:37:32
-
hola, solo quiero confirmar una duda que tengo:
si hago esto:
movlw 0x00
el valor de STATUS,Z es uno despues de la instruccion anterior?, es decir, STATUS,Z se pone a 1 al mover un 0 a W?
sl2
-
hola, solo quiero confirmar una duda que tengo:
si hago esto:
movlw 0x00
el valor de STATUS,Z es uno despues de la instruccion anterior?, es decir, STATUS,Z se pone a 1 al mover un 0 a W?
sl2
No, STATUS,Z se pone a 1 como en el mismo datasheet dice solo cuando el resultado de una operacion logica o aritmetica da cero.
-
Hola Black_flowers:
En la medida de lo posible buscamos el mantener orden en el foro, es por eso fue necesario mover tu tema a este subforo, y creo recordar que no es el primero.
Este subforo "Almacen del Assembler" sirve para preguntar todo lo referente a assembler y tambien para que los amigos foreros que busquen informacion de assembler la encuentren en este lugar con lo cual todos ganamos en orden.
Espero no lo tomes a mal y nos ayudes a mantener ordenado el foro. :wink:
Saludos
-
black_flowers:
Si te fijas en el datasheet de el PIC que estes usando, podras ver bajo la seccion "Instruction Set Summary" que la instruccion movlw no afecta ningun flag.
Si necesitas verificar si W= 0, entonces podrias hacer por ejemplo:
ADDLW .0
ya que sumarle 0 al valor que tenia W no modifica su valor anterior, pero la instruccion addlw setea el flag Z que es lo que necesitás.
Suerte.
-
ok, gracias, por cierto lo coloqué en el de iniciacion porque pense que era el mas adecuado, la proxima vez ya se en donde
1 saludo. :)