[elektro] PIC18 C + asm
hg12345
hg12345 at freemail.hu
Fri Apr 4 19:07:17 CEST 2014
Hi
próbáld meg 8 bites tömbre cast-olni és a tömb elemeket kiküldeni, ezt egy 8 bites rendszer esetén elég tömörre kell kihozni a fordítónak.
((uint8_t*) &Változó)[0]....
"Balla Zoltán" <sdrlab at yandex.ru> írta:
>Feladó: "potyo" <potyo.ada at gmail.com>
>> Ha megszakításról van szó, akkor szerintem a fordító látja, hogy az a
>> regiszter használva van, és lementi. Hogy mivan, ha te belerondítasz, azt
>> nem tudom, meg kellene nézni az asm listát.
>>
>> Amúgy én azt csinálnám, hogy addig finomítanám a C kódot, amíg azt nem
>> kapom az asm listában, ami nekem kell. Lehet, hogy C-ben nem lesz a
>> legszebb és/vagy legrövidebb a kód, de C18-ban el lehet érni, hogy egész
>> jó
>> kódot csináljon. Ha viszont XC8-at használsz, akkor ez utóbbi bekezdést
>> tekintsd tárgytalannak :-((
>>
>Nem, sima C18-as fordítót használok per pillanat ennél.
>Az a baj a C forrással, hogy sok műveletem van 32 bites számokkal, melyeket
>a 8 bites portra kell kiküldenem egymás után. Ha ezt lekódolom C-ben, eléggé
>hosszú asm kódot generál belőle! Az elején természetesen eszembe sem jutott
>asm-el bohóckodni C projecten belül..., de indirekt címzéssel sokkal
>hatékonyabb kódot lehet írni erre az esetre legalábbis!
>Fosok ettől az egésztől...pedig nagyon jó lenne az így kialakuló
>kódtömörség=sebesség.
>
>Zoli
>
>-----------------------------------------
> elektro[-flame|-etc]
More information about the Elektro
mailing list