I dokumentationen til 16F84 står forslag til kode til PUSH og POP til anvendelse hhv før og efter interruptet.
; ***************************************************** PUSH ; Gemmer vigtige registre movwf WBuffer ; save w reg in Buffer swapf STATUS,W ; get status to be saved into w movwf StatBuffer ; move W(indholdet) til StatBuffer return
; ***************************************************** POP ; Genetablerer vigtige registre swapf StatBuffer,W ; swap nibbles in Statbuffer ; and place result into w movwf STATUS ; move indholdet in w to STATUS swapf WBuffer,F ; swap nibbles in WBuffer ; and place it into WBuffer swapf WBuffer,W ; swap nibbles in WBuffer and ; place it in W return
HVORFOR er det liiiige NIBBLES swap'es ved flytningerne ?
Mvh KS