Optimalizace kodu
Ladislav Vaiz
spam@nagano.cz
Středa Leden 3 15:46:42 CET 2007
Ano, melo by pomoci:
1) pouzivat ukazatele misto indexovani poli
2) ridici promennou dekrementovat a porovnavat s nulou
U druheho bodu si v pripade PICu nejsem jisty, jeho instrukce neznam, ale
u Intelu to funguje.
Zkusil bych neco jako
pe=data_externi;
pi=data_interni;
for (i=64;i;i--){
*pe=*pi;
pe++;
pi++;
}
Lada
On Wed, 3 Jan 2007, Michal HW wrote:
> Pracuji na vetsim SW v C - HT-Soft + 18F8722.
>
> Pokud presunuji structury z vnitrni RAM do externi, kompilator z toho udela
> par radku kodu:
>
> Structura_Externi=Structura_Vnitrni;
>
>
> Ale pokud totez udelam s polem rucne:
>
> for (Pocet_B=63;Pocet_B!=255;--Pocet_B) {
> Data_Externi[Pocet_B]=Data_Vnitrni[Pocet_B];
> }
> vznikne monstrozni kod. Pokazde se pocita HW ukazatel(TBLPTR) pro externi a
> vnitrni pamet.
>
> Lze to optimalizovat v C kodu bez nutnosti zmeny datovych structur?
> Nebo mam zmenit pole na structury?
> Jak to optimalizuji jine kompilatory?
> Michal Gregor
>
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
Další informace o konferenci Hw-list