avr-gcc liczba taktów działań.

Witam wszystkich Czy jest gdzieś jakiś spis ile taktów potrzebuje mikrokontroler AVR na wykonanie pewnych działań matematycznych? Chodzi mi o kompilator avr-gcc i działania typu: liczba 32bit/8bit=? double/float=?

Dodawanie liczb 32bitowych łatwo można podejrzeć w skompilowanym pliku, ale dzielenie już takie przejrzyste nie jest. Mam dylemat, czy rzeźbić w liczbach typu long, czy prościej wykorzystać liczby zmienno przecinkowe.

Pozdrawiam

Reply to
Michał
Loading thread data ...

Użytkownik Michał napisał:

Takiej tabelki raczej nie znajdziesz, bo ta sama operacja może trwać trochę inny czas w zależności od wersji kompilatora. Dzielenie na liczbach float będzie z pewnością sporo wolniejsze od dzielenia całkowitego na longint. Jeśli chcesz się dowiedzieć ile czasu zajmuje dana operacja (procedura) to wrzuć program na symulator i sprawdź. Dokładne liczenie taktów zegara dla algorytmu dzielenia trochę mija się z celem, bo czas wykonania operacji będzie trochę zależał od wartości dzielnej i dzielnika.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Przejrzyste moze nie jest, ale trzeba tyle obiegow petli ile bitow wykonac.

Dzielenie na floatach IMHO bedzie szybsze. Mniej bitow - matysa tylko 24 bity. Za to dodawanie i odejmowanie jest kosztowne.

Glowna sprawa to na ile jestes w stanie przewidziec zakres liczb - obliczenia na stalym przecinku to maly koszmar jesli chodzi o pilnowanie zakresow, czesto wygodniej zmienny przecinek uzyc i nie szacowac bledow.

J.

Reply to
J.F.

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.