Jak w Asemblerze PIC dynamicznie wybierać rejestr na podstawie zmiennej tmp?
PIC Asembler
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:
- W zależności od wartości rejestru tmp(od 0 do 3)
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
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