RTV forum PL | NewsGroups PL

Jak zrealizować skoki warunkowe w deasemblacji RC5 na 8051?

8051, RC5 i deasemblacja

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak zrealizować skoki warunkowe w deasemblacji RC5 na 8051?

Guest

Wed Mar 28, 2007 9:40 pm   



Witam, mam wykonac pewien projekt. Potrzebuje funkcje do odczytu kodu
RC5. Pomyslalem sobie ze zdeassembluje ta z BASCOMA... Prawie mi sie
to udalo... Niestety nie wiem co jest rozumiane przez "reladdr" przy
skokach warunkowych. W przypadku podprogramow i LCALL'a adresem jest
poprostu komorka w pamieci programu w ktorej rozpoczyna sie funkcja.

Z dokumentacji wynika:
Operation: LCALL
Function: Long Call
Syntax: LCALL code addr

Operation: DJNZ
Function: Decrement and Jump if Not Zero
Syntax: DJNZ register,reladdr

Pomozcie, bo mam juz cala funkcje, tylko nie wiem jak uzupelnic
skoki...

Chyba ze ma ktos gotowa taka funkcje w ASM'ie dla 51" ? Niestety nie
znalazlem nic na necie:(

--
Pozdrawiam, Piotrek

Waldemar
Guest

Wed Mar 28, 2007 9:46 pm   



jotixel@gmail.com schrieb:
Quote:
Witam, mam wykonac pewien projekt. Potrzebuje funkcje do odczytu kodu
RC5. Pomyslalem sobie ze zdeassembluje ta z BASCOMA... Prawie mi sie
to udalo... Niestety nie wiem co jest rozumiane przez "reladdr" przy
skokach warunkowych. W przypadku podprogramow i LCALL'a adresem jest
poprostu komorka w pamieci programu w ktorej rozpoczyna sie funkcja.

Z dokumentacji wynika:
Operation: LCALL
Function: Long Call
Syntax: LCALL code addr

Operation: DJNZ
Function: Decrement and Jump if Not Zero
Syntax: DJNZ register,reladdr

Pomozcie, bo mam juz cala funkcje, tylko nie wiem jak uzupelnic
skoki...

relatywny. Reladdr to ofset do aktualnej wartości licznika.

Quote:
Chyba ze ma ktos gotowa taka funkcje w ASM'ie dla 51" ? Niestety nie
znalazlem nic na necie:(

jest dla Atmela. Może spróbujesz przerobić.

Waldek

Guest

Wed Mar 28, 2007 9:51 pm   



On 28 Mar, 22:46, Waldemar <walde...@caarine.de> wrote:

Quote:
relatywny. Reladdr to ofset do aktualnej wartości licznika.

Hmm, bylbym wdzieczny za bardziej wyczerpujaca wypowiedz;)
Nie bawie sie w te klocki za dlugo ;-)

Jak obliczyc ten adres?

--
Pozdrawiam, Piotrek

J.F.
Guest

Wed Mar 28, 2007 10:16 pm   



On 28 Mar 2007 13:51:28 -0700, jotixel@gmail.com wrote:
Quote:
On 28 Mar, 22:46, Waldemar <walde...@caarine.de> wrote:
relatywny. Reladdr to ofset do aktualnej wartości licznika.

Hmm, bylbym wdzieczny za bardziej wyczerpujaca wypowiedz;)
Nie bawie sie w te klocki za dlugo ;-)

Jak obliczyc ten adres?

jest to liczba ze znakiem, ktora sie dodaje do aktualnej
wartosci PC. Z tym ze w chwili wykonania to PC wskazuje nastepny bajt
po instrukcji skoku.

przyklad
17 0010 C loop2:
18 0010 A2B0 C mov C,P3.0
19 0012 9290 C mov P1.0,C
20 0014 D8FA C djnz R0,loop2


FA to jest -6

J.

Guest

Wed Mar 28, 2007 10:36 pm   



On 28 Mar, 23:16, J.F. <jfox_xnosp...@poczta.onet.pl> wrote:

Quote:
jest to liczba ze znakiem, ktora sie dodaje do aktualnej
wartosci PC. Z tym ze w chwili wykonania to PC wskazuje nastepny bajt
po instrukcji skoku.

przyklad
17 0010 C loop2:
18 0010 A2B0 C mov C,P3.0
19 0012 9290 C mov P1.0,C
20 0014 D8FA C djnz R0,loop2

FA to jest -6

Hmm i niech zgadne od 127 do 255 FA jest ujemne i skoki sa do labeli w
gore,
natomiast od 0 do 126 skaczemy w dol ?

--
Pozdrawiam, Piotrek

Waldemar
Guest

Wed Mar 28, 2007 10:41 pm   



jotixel@gmail.com schrieb:
Quote:
On 28 Mar, 23:16, J.F. <jfox_xnosp...@poczta.onet.pl> wrote:

jest to liczba ze znakiem, ktora sie dodaje do aktualnej
wartosci PC. Z tym ze w chwili wykonania to PC wskazuje nastepny bajt
po instrukcji skoku.

przyklad
17 0010 C loop2:
18 0010 A2B0 C mov C,P3.0
19 0012 9290 C mov P1.0,C
20 0014 D8FA C djnz R0,loop2

FA to jest -6

Hmm i niech zgadne od 127 do 255 FA jest ujemne i skoki sa do labeli w
gore,
natomiast od 0 do 126 skaczemy w dol ?

FA jest zawsze -6 i skaczemy do tyłu D8 to skok. Jakbyś miał D808 to
skaczesz o 8 w dół.

Waldek

Guest

Wed Mar 28, 2007 10:41 pm   



On 28 Mar, 23:36, joti...@gmail.com wrote:

Quote:
Hmm i niech zgadne od 127 do 255 FA (...) CIACH
TFU zadne FA, tylko reladdr;)


vania
Guest

Thu Mar 29, 2007 12:22 am   



Cześć.

jotixel@gmail.com napisał(a):

Quote:
Chyba ze ma ktos gotowa taka funkcje w ASM'ie dla 51" ? Niestety nie
znalazlem nic na necie:(

W necie jest wszystko ;)

ftp://ftp.circuitcellar.com/pub/Cross_Development/IRCON.ZIP
http://www.ustr.net/infrared/infrared1.shtml
http://platan.ru/shem/pdf/rc-5.pdf
http://www.8052.com/codelib/rc5.c

Jeszcze jakieś inne w asm mam na CD, jak to co wyżej sie nie sprawdzi to
odezwij sie na priv.

--
vania

elektroda NewsGroups Forum Index - Elektronika Polska - Jak zrealizować skoki warunkowe w deasemblacji RC5 na 8051?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map