?Dlaczego w programie w Asemblerze z Atmegi 2313 nie działa powrót do rcall stop??
Asembler, dlaczego zle dziala?
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!?
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.
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.
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------+------------------------+
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
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/ ###
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 ;-)
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/ ###
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 !
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.
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.