?Dlaczego w programie w Asemblerze z Atmegi 2313 nie działa powrót do rcall stop??

Asembler, dlaczego zle dziala?





Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?Ania_i_Grze=B6?= <brak_at_nospam_maila.pl>
Subject: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 18:36:59 +0100


Witam.

Zaczynam boje z asemblerem (oraz z C rownolegle). Natknalem sie na
pierwszy problem, mianowicie, po wykonaniu petli delay nastepuje powrot
do polecenia "ldi r16,0x20", dlaczego nie do rcall stop?

.include "2313def.inc"
.cseg
.org 0x00
startL:
ldi r16,0x20
rcall delay
rcall stop
delay:
dec r16
cpi r16,0
brne delay
ret
stop:
nop

--
Pozdrawiam, Ania i Grzes (Od 26.12.2004 mąż i żona)
- Żwirek kręci z Muchomorkiem!?

Poprzedni Następny
Wiadomość
Spis treści
From: Wojtek Kaniewski <wojtekka_at_nospam_SPAM.SPAM.SPAM>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 18:48:36 +0100


Ania i Grześ wrote:
Zaczynam boje z asemblerem (oraz z C rownolegle). Natknalem sie na
pierwszy problem, mianowicie, po wykonaniu petli delay nastepuje powrot
do polecenia "ldi r16,0x20", dlaczego nie do rcall stop?

skąd wiesz, że tak robi? poza tym, wypadałoby ustawić wskaźnik stosu,
zanim zacznie się z niego korzystać. no i jeśli by skoczył do stop, to
licznik rozkazów w końcu się przekręci i wróci do zera.

w.

Poprzedni Następny
Wiadomość
Spis treści
From: "T.M.F." <tfrancuz_at_nospam_nospam.mp.pl>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 18:50:45 +0100


Ania i Grześ wrote:
Witam.

Zaczynam boje z asemblerem (oraz z C rownolegle). Natknalem sie na
pierwszy problem, mianowicie, po wykonaniu petli delay nastepuje powrot
do polecenia "ldi r16,0x20", dlaczego nie do rcall stop?

.include "2313def.inc"
.cseg
.org 0x00
startL:
ldi r16,0x20
rcall delay
rcall stop
delay:
dec r16
cpi r16,0
brne delay
ret
stop:
nop


Bo nie zainicjowales stosu. Patrz pare postow wyzej - ten sam problem.


--
Inteligentny dom - http://idom.wizzard.one.pl
Teraz takze forum dyskusyjne
Zobacz, wyslij uwagi, dolacz sie do projektu.

Poprzedni Następny
Wiadomość
Spis treści
From: Mateusz Majchrzycki <spam_at_nospam_spam.spam>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 4 Feb 2005 17:58:48 +0000 (UTC)


Pewnego dnia Ania i Grześ <brak_at_nospam_maila.pl> nastukał(a):
Zaczynam boje z asemblerem (oraz z C rownolegle). Natknalem sie na
pierwszy problem, mianowicie, po wykonaniu petli delay nastepuje
powrot do polecenia "ldi r16,0x20", dlaczego nie do rcall stop?

Już było dzisiaj :)
Nie inicjujesz stosu, to dokąd program ma wrócić instrukcją ret?

--
+-----Pozdrawiam------+------------------------+
\ Mateusz Majchrzycki \ W życiu liczą się \
\ MateoM[at]poczta.fm \ drobne przyjemności... \
+------GG#897890------+------------------------+

Poprzedni Następny
Wiadomość
Spis treści
From: BLE_Maciek <i80c586_at_nospam_cyberspace_NO_SPAM_.org>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 19:28:24 +0100


Fri, 04 Feb 2005 18:36:59 +0100 jednostka biologiczna o nazwie Ania i
Grześ <brak_at_nospam_maila.pl> wyslala do portu 119
jednego z serwerow news nastepujace dane:

dec r16

cpi r16,0
A tak w ogole to po co cpi ? Instrukcja dec w AVRach, w odoroznieniu
od np. 8086, ustawia flage Z jezeli zmniejszany rejestr sie wyzerowal.
Chyba ze chodzilo o dodatkowe opoznienie :-)

brne delay


Poprzedni Następny
Wiadomość
Spis treści
From: Zbych <abuse_at_nospam_onet.pl>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 19:36:25 +0100


Pewnego dnia BLE_Maciek przemówił ludzkim głosem:


A tak w ogole to po co cpi ? Instrukcja dec w AVRach, w odoroznieniu
od np. 8086, ustawia flage Z jezeli zmniejszany rejestr sie wyzerowal.

nie 8086 tylko 8051 ;P

--
Prawo jest jak płot - żmija zawsze się prześlizgnie,
tygrys zawsze przeskoczy a bydło tylko stoi i czeka.

### /mail: bzb<at>poczta<dot>onet<dot>pl/ ###

Poprzedni Następny
Wiadomość
Spis treści
From: BLE_Maciek <i80c586_at_nospam_cyberspace_NO_SPAM_.org>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 19:35:19 +0100


Fri, 04 Feb 2005 19:36:25 +0100 jednostka biologiczna o nazwie Zbych
<abuse_at_nospam_onet.pl> wyslala do portu 119
jednego z serwerow news nastepujace dane:

nie 8086 tylko 8051 ;P
Nie ma znaczenia, dec i w tym i w tym nie ustawia flag. Chyba ze
chodzilo o to ze 8086 to NTG ;-)

Poprzedni Następny
Wiadomość
Spis treści
From: Zbych <abuse_at_nospam_onet.pl>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 19:42:14 +0100


Pewnego dnia BLE_Maciek przemówił ludzkim głosem:

Nie ma znaczenia, dec i w tym i w tym nie ustawia flag. Chyba ze
chodzilo o to ze 8086 to NTG ;-)

http://www.penguin.cz/~literakl/intel/d.html#DEC

Usage: DEC dest

Modifies Flags: AF OF PF SF ZF

Unsigned binary subtraction of one from the destination.

--
Prawo jest jak płot - żmija zawsze się prześlizgnie,
tygrys zawsze przeskoczy a bydło tylko stoi i czeka.

### /mail: bzb<at>poczta<dot>onet<dot>pl/ ###

Poprzedni Następny
Wiadomość
Spis treści
From: BLE_Maciek <i80c586_at_nospam_cyberspace_NO_SPAM_.org>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 19:41:12 +0100


Fri, 04 Feb 2005 19:42:14 +0100 jednostka biologiczna o nazwie Zbych
<abuse_at_nospam_onet.pl> wyslala do portu 119
jednego z serwerow news nastepujace dane:

Usage: DEC dest

Modifies Flags: AF OF PF SF ZF

LOL. Przyznam sie ze nie wiedzialem :-(
JZ/JNZ po DEC uzywalem tylko w przypadku rejestru AX. Przypuszczam ze
takie zwyczaje zaciagnalem z Z80 :-)
Dzieki !

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_xnospamx_at_nospam_poczta.onet.pl>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 20:36:30 +0100


On Fri, 04 Feb 2005 19:41:12 +0100, BLE_Maciek wrote:
Fri, 04 Feb 2005 19:42:14 +0100 jednostka biologiczna o nazwie Zbych
Usage: DEC dest

Modifies Flags: AF OF PF SF ZF

LOL. Przyznam sie ze nie wiedzialem :-(
JZ/JNZ po DEC uzywalem tylko w przypadku rejestru AX. Przypuszczam ze
takie zwyczaje zaciagnalem z Z80 :-)

Ale o ile mnie pamiec nie myli, to w Z80 ustawialy.
Poza dec hl/de/bc.


J.


Poprzedni Następny
Wiadomość
Spis treści
From: "T.M.F." <tfrancuz_at_nospam_nospam.mp.pl>
Subject: Re: Asembler, dlaczego zle dziala?
Date: Fri, 04 Feb 2005 20:53:02 +0100


Ale o ile mnie pamiec nie myli, to w Z80 ustawialy.
Poza dec hl/de/bc.

Pamiec cie nie myli :)


--
Inteligentny dom - http://idom.wizzard.one.pl
Teraz takze forum dyskusyjne
Zobacz, wyslij uwagi, dolacz sie do projektu.