TODOPIC

Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: NorColombiano en 28 de Agosto de 2007, 18:42:17

Título: Sobre flags
Publicado por: NorColombiano en 28 de Agosto de 2007, 18:42:17
Hola, mi pregunta es...

por ejemplo despues de hacer un Xorlw, y el resultado es zero, tons el flag Zero se activa.

La pregunta es, digamos aqui:

Xorlw 0x00
;flag Z=1
movf ... <- flag Z=1
<- aqui flag Z=0? o sigue siendo 1 hasta que lo limpiemos?

Saludos
Título: Re: Sobre flags
Publicado por: NorColombiano en 28 de Agosto de 2007, 19:03:52
Bueno pues le puse un clrz por si las dudas y funciono perfecto.
Título: Re: Sobre flags
Publicado por: maunix en 04 de Septiembre de 2007, 09:49:09
La pregunta es, digamos aqui:

Xorlw 0x00
;flag Z=1
movf ... <- flag Z=1
<- aqui flag Z=0? o sigue siendo 1 hasta que lo limpiemos?


Sigue siendo uno hasta que alguna instrucción que trabaje sobre el Z le cambie el estado (o bien lo mantenga como estaba).

Si te figas en el set de instrucciones, en el manual te dice que bits afectan.

el movf afecta al Z, pero por ejemplo si el movf se hace sobre un registro cuyo valor es 0 entonces el Z seguirá en 1. (el Z en realidad se actualizó pero para volver a tomar el mismo valor)