Jak w Asemblerze PIC dynamicznie wybierać rejestr na podstawie zmiennej tmp?

PIC Asembler





Poprzedni Następny
Wiadomość
Spis treści
From: "~Filut~" <pawel_at_nospam_filuts.waw.pl>
Subject: PIC Asembler
Date: Tue, 18 Jun 2002 14:19:38 +0200


Witam wszystkich !
Czy da się w Asemblerze PIC`a zrobić taką rzecz:

podstawiany będzie rejestrX:

btfss rejestrX,0

W efekcie chciałbym uzyskać efekt:

If tmp=0
btfss rejestr0,0
If tmp=1
btfss rejestr1,0
If tmp=2
btfss rejestr2,0
If tmp=3
btfss rejestr3,0


Pozdrawiam





Poprzedni Następny
Wiadomość
Spis treści
From: "Maciej Zaręba" <zarebama_at_nospam_wp.pl>
Subject: Re: PIC Asembler
Date: Tue, 18 Jun 2002 23:32:08 +0200


Bardzo latwo za pomoca rejestrow INDF i FSR. Do FSR ladujesz adres rejestru
o ktory ci chodzi a w indf masz dane z tego rejestu.
Np. Dla PIC 16f84
zakladajac ze twoje rejestry "zaczynaja" sie od adresu 0ch

movf tmp,w ;zaladuj do W rejestr tmp
addlw 0ch ;dodaj "przesuniecie"
btfss indf,0 ;testuj bit
.
.
jeśli tmp nie musi zaczynac sie od 0 a np. od 0ch to nie musisz nic
dodawać.


--
Maciej Zaręba
zarebama_at_nospam_zt.lomza.tpsa.pl
zarebama_at_nospam_wp.pl
ICQ: 102615558