keil + asmebler
Masz problem? Zapytaj na forum elektroda.pl
From: tom <tom_at_nospam_nospam.w.pl>
Subject: keil + asmebler
Date: Thu, 02 Jan 2003 22:21:08 +0100
Czy ktoś może orientuje się w jaki sposób włączyć do kodu napisanego w C
kilka funkcji które są napisane w asemblerze. Próbowałem przenieść te
funkcje do C, ale wychodzą one pod względem optymalności o wiele gorzej
niż gdybym bezpośrednio napisał to w asmeblerze, szczególnie że nie mogę
znaleźć odpowiedników rozkazów RRC czy RLC . Robię to w Keilu.
Przeszukałem trochę netu pod tym kierunkiem ale nic właściwego nie mogę
znaleźć.
--
Pozdr.
Tom
usuń nospam z adresu aby uzyskać poprawny email
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.atman.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mai
From: "Krzyku" <krzyku123_at_nospam_poczta.onet.pl>
Subject: Re: keil + asmebler
Date: Fri, 3 Jan 2003 00:56:10 +0100
znaleźć odpowiedników rozkazów RRC czy RLC . Robię to w Keilu.
Witam
Mialem ten sam problem po przejsciu z asemblera na C. Nadal nie wiem jak sie
wlacza kod asemblerowy w kod C ale w celu zastapienia instrukcji rotacji
proponuje Ci przegladniecie funkcji " crol" i " cror" z bilioteki
intrins.h . Sa one opisane w pliczku c51.pdf
Krzyku
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.ipartners.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mai
From: tom <tom_at_nospam_nospam.w.pl>
Subject: Re: keil + asmebler
Date: Fri, 03 Jan 2003 08:15:10 +0100
w celu zastapienia instrukcji rotacji
proponuje Ci przegladniecie funkcji " crol" i " cror" z bilioteki
intrins.h . Sa one opisane w pliczku c51.pdf
Widziałem te instrukcje lecz niestety po tym jak przejrzałem jaki kod
wynikowy one generują nie jestem specjalnie nimi zainteresowany.
--
Pozdr.
Tom
usuń nospam z adresu aby uzyskać poprawny email
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.onet.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mai
From: tom <tom_at_nospam_nospam.w.pl>
Subject: Re: keil + asmebler
Date: Fri, 03 Jan 2003 08:19:37 +0100
w celu zastapienia instrukcji rotacji
proponuje Ci przegladniecie funkcji " crol" i " cror" z bilioteki
intrins.h . Sa one opisane w pliczku c51.pdf
Widziałem te instrukcje, ale po tym jak zobaczyłem jaki kod wynikowy one
generują nie jestem specjalnie nimi zainteresowany.
--
Pozdr.
Tom
usuń nospam z adresu aby uzyskać poprawny email
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.onet.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mai
From: tom <tom_at_nospam_nospam.w.pl>
Subject: Re: keil + asmebler
Date: Fri, 03 Jan 2003 08:20:48 +0100
w celu zastapienia instrukcji rotacji
proponuje Ci przegladniecie funkcji " crol" i " cror" z bilioteki
intrins.h . Sa one opisane w pliczku c51.pdf
Widziałem te instrukcje, ale po tym jak zobaczyłem jaki kod wynikowy one
generują przestałem być nimi zainteresowany.
--
Pozdr.
Tom
usuń nospam z adresu aby uzyskać poprawny email
=========
Newsgroups: pl.misc.elektronika
Subject: Re: keil + asmebler
Date: Fri, 3 Jan 2003 01:51:15 +0100
Lines: 13
References: <av2af2$5q9$1_at_nospam_news.tpi.pl>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=iso-8859-2
Content-Transfer-Encoding: 8BIT
X-Trace: localhost.localdomain 1041555076 1528 127.0.0.1 (3 Jan 2003 00:51:16 GMT)
NNTP-Posting-Date: Fri, 3 Jan 2003 00:51:16 +0000 (UTC)
In-Reply-To: <av2af2$5q9$1_at_nospam_news.tpi.pl
From: Krzysztof Piecuch <kpiecuch_at_nospam_optic.com.pl>
Subject: Re: keil + asmebler
Date: Fri, 03 Jan 2003 08:52:55 +0100
tom napisał(a):
Czy ktoś może orientuje się w jaki sposób włączyć do kodu napisanego w C
kilka funkcji które są napisane w asemblerze.
Robię to w Keilu.
A jaka wersja keila?
--
**** Krzysztof Piecuch ****
krzysztof.piecuch_at_nospam_optimus-ic.pl
kpiecuch_at_nospam_optic.com.pl
OPTIMUS IC
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.atman.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mai
From: tom <tom_at_nospam_nospam.w.pl>
Subject: Re: keil + asmebler
Date: Fri, 03 Jan 2003 09:36:21 +0100
A jaka wersja keila?
Dokłądnie to jest archimedes, wersja kompilatora 5.01, pisałem że używam
keila bo jak dotąd nie zauważyłem zadnych funkcjonalnych róznic, a
dokumentacji używam do Keila. Może z tym asemblerem będzie to pierwsza
różnica?!
--
Pozdr.
Tom
usuń nospam z adresu aby uzyskać poprawny email
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.internetia.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mai
From: Krzysztof Piecuch <kpiecuch_at_nospam_optic.com.pl>
Subject: Re: keil + asmebler
Date: Fri, 03 Jan 2003 10:09:45 +0100
tom napisał(a):
A jaka wersja keila?
Dokłądnie to jest archimedes, wersja kompilatora 5.01, pisałem że używam
keila bo jak dotąd nie zauważyłem zadnych funkcjonalnych róznic, a
dokumentacji używam do Keila. Może z tym asemblerem będzie to pierwsza
różnica?!
--
> Pozdr.
> Tom
> usuń nospam z adresu aby uzyskać poprawny email
No nie wiem. Ja mam Keila6.20.
Tam sie to robilo:
#pragma asm
a tutaj kod asm
#pragma endasm
Dodatkowo trzeba w opcjach zaznaczyc:
Generate Asembler SRC file
oraz
Assemble SRC file.
--
**** Krzysztof Piecuch ****
krzysztof.piecuch_at_nospam_optimus-ic.pl
kpiecuch_at_nospam_optic.com.pl
OPTIMUS IC
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.silweb.pl!news.onet.pl!not-for-mai
From: "Krzyku" <krzyku123_at_nospam_poczta.onet.pl>
Subject: Re: keil + asmebler
Date: Sat, 4 Jan 2003 16:02:52 +0100
Dodatkowo trzeba w opcjach zaznaczyc:
Generate Asembler SRC file
oraz
Assemble SRC file.
Witam
Zaznaczam te opcje dla wszystkich plikow .c ale po kompilacji kod wynikowy
zmniejsza sie z 4K na 3K i wywala mi ostrzezenie:
* WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: _PRINTF
ale nie dziala nic. Poza tym zadnych bledow. Co mozna z tym zrobic?
Krzyku
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.man.poznan.pl!pwr.wroc.pl!panorama.wcss.wroc.pl!not-for-mai
From: Kubsztal <kubsztal-wytnij-to_at_nospam_alpha.net.pl>
Subject: Re: keil + asmebler
Date: Mon, 06 Jan 2003 22:05:40 +0100
Dnia Thu, 02 Jan 2003 22:21:08 +0100 człowiek znany jako tom
<tom_at_nospam_nospam.w.pl> wykaligrafował, co następuje:
Czy ktoś może orientuje się w jaki sposób włączyć do kodu napisanego w C
kilka funkcji które są napisane w asemblerze. Próbowałem przenieść te
Jesli masz te wstawki w postaci osobnych funkcji, to doklej sobie do
projektu plik asm z tymi funkcjami. Robi sie to tak, ze w pliku asm
deklarujesz na poczatku segmenty dla danych procedur:
?PR?funkcja_1?nazwa_pliku SEGMENT CODE
?PR?funkcja_2?nazwa_pliku SEGMENT CODE
gdzie nazwa_pliku to plik asm,
potem upubliczniasz te funkcje:
PUBLIC funkcja_1, funkcja_2
nastepnie przed kazda procedura ustawiasz dany segment:
RSEG ?PR?funkcja_1?nazwa_pliku
funkcja1:
programik w asm
ret
RSEG ?PR?funkcja_2?nazwa_pliku
funkcja2:
programik w asm
ret
end
A w pliku c dobierasz sie do tego w sposob:
extern code funkcja_1(void);
extern code funkcja_2(void);
jako deklaracje na samym poczatku i wywolujesz najnormalniej w
swiecie, jak kazda funkcje bez parametrow.
BTW - wszystko powyzsze oparte jest o obszary relokowalne. Pozdr.
Kubsztal.
=========
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mai