C nebo ASM?

Richard Kaliciak hw.kaliciak@stonline.sk
Pátek Květen 22 11:53:02 CEST 2009


Dobry den,

optimalizovat preklad z C do ASM je napr. pre procesory CISC dost 
problem, napr. ako donutit prekladac pre Z80, aby pouzil instrukciu 
LDIR, ak mu to predtym v C nepredzujem (=myslim tym vhodny zapis v C, 
napr --count namiesto count--)? Alebo R8C instrukciu RMPA (Repeat 
MultiPle and Addition)? (Tu sa to vyriesilo makrom.)
Potom sa nemozeme cudovat, ze sa po prelozeni do ASM kazdy index znovu 
pocita.

S tym vyrokom o knizkach o programovani plne suhlasim.

Richard Kaliciak

Jan Waclawek schrieb:
> "Stejne rychly" je samozrejme nezmysel, to vsetko zavisi od kontextu. Aj v asembleri sa da pisat zle, ale vo vseobecnosti program napisany vo vyssom jazyku je pomalsi a vacsi ako ten isty program napisany v asembleri *skusenym programatorom*. To je dan za pohodlnost, bodka. Vo vacsine pripadov to vsak nevadi, resp. je to akceptovane ako primerany kompromis medzi pohodlnostou a spotrebovanymi prostriedkami (procesorovy cas, pamate); v tej mensine pripadov ked to vadi, sa obvykle jedna o nejaky kratky avsak kriticky usek programu, kde sa to oplati prepisat v asembleri alebo robit to saskovanie typu "napisem to niekolkymi sposobmi a pozriem sa, ktory z nich prekladac prelozil najlepsie".
> 
> Prekladac (resp. jeho optimalizator) je program, ktory sa snazi pochopit, co clovek nejakym zapisom myslel, a ten potom zoptimalizovat. Niekedy to proste uhadnut z toho zapisu nejde, a niekedy ten optimalizator je nedokonaly. Ako Andrej uz niekolkokrat pisal, HiTech ma tie prekladace dva, a pokial viem, su vyrazne odlisne, najma co sa optimalizacie tyka; tak mozno by ste sa mali obzriet aj v tomto smere.
> 
> Dalej drviva vacsina kniziek a takychto vseobecnych tvrdeni v nich su PC-centricke a pre jednocipy (myslim tym "small embedded", nie zlepence (SoC) typu ARM a spol.) maju len obmedzenu platnost. Napriklad v dnesnej dobe je vzhladom na extremnu zlozitost a vyraznu odlisnost a rychlu premenlivost jednotlivych verzii x86 len hrstka ludi, ktori si dali namahu plne pochopit co a ako v nich funguje, takze jednoducho neexistuju *skuseni programatori* v asm pre sucasne x86, ktori by mohli sutazit s hoci aj priemernym prekladacom; avsak u 8-bitov je to naopak.
> 
> 
> JW
> 
> 
> _______________________________________________
> 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