-
Data: 2014-04-05 11:49:07
Temat: Odp: C vs. ASM na przykładzie PIC18F
Od: Sylwester Łazar <i...@a...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> 1. Kompilator HiTech 8.05PL2 -O -Zg, procesor pic16f876A:
> 149 words(słów, nie bajtów) ROM, 38 bytes RAM
> bez funkcji zlicz(), odpowiednio 54 słów ROM, 35 RAM
>
> 2. Kompilator HiTech 9.63PL2 --opt=ALL , procesor pic18f252:
> 284 bytes ROM, 37 RAM
> bez funkcji zlicz(),75 bytes ROM, 15 bytes RAM
>
> 3. Kompilator XC8, ver 1.3 --opt=ALL (60-dniowa) procesor pic18f252: nie
> wiem do końca, ćzy jest właczone MODE PRO niby w ciągu 60 dni powinno być
> właczone ale coś kod zbyt duży wychodzi):
> 606 bytes ROM, 43 RAM
> bez funkcji zlicz() 160 ROM, 35 RAM
>
> 4. AVR-GCC na atmega32 -O2 (nie znam jeszcze dokładnie avr-gcc i jego
opcji)
> 376 ROM, 37 RAM
> bez funkcji zlicz() 222 ROM, 37 RAM
>
> Wśród PICów jaki widać zwycięzcą jest 8.05 na PIC16.
>
> jp
Dzięki.
Mam mieszane uczucia.
Napracowałeś się, przekompilowałeś i mamy fajne dane.
Teraz tak.
Ten PIC, który wybrałeś dla pkt.1 to 16F, a nie 18F.
Różnica jest taka, że on ma 14bitów długość rozkazu, więc tam w bajtach nie
mozna porównywać.
Słusznie napisałeś, że po kompilacji ma 149 _słów_.
Mój w ASM ma 71 słów na 18F.
na 16F miałby o 10 słów więcej, gdyż 16F nie ma rozkazów LFSR,MOVFF i NEGF.
Czyli 81 słów vs. 149 słów, czyli współczynnik C/ASM=1,8.
Całkiem nieźle, jeśli chodzi o nadmiarowość kodu.
Jednak jak powiedziałem - nie mierzyłem czasu, więc nie są te badania
obiektywne,
co do czasu wykonywania.
Ja podałem ok. 6x wolniejszy, ale to tylko szacunek.
Podaj może ilość rozkazów w głównej pętli sortującej, lub umieść kod to
policzymy.
S.
Następne wpisy z tego wątku
- 05.04.14 12:28 Marek
- 05.04.14 12:42 Sylwester Łazar
- 05.04.14 12:42 jacek pozniak
- 05.04.14 12:48 Sylwester Łazar
- 05.04.14 12:52 Marek
- 05.04.14 13:03 Sylwester Łazar
- 05.04.14 13:09 Sylwester Łazar
- 05.04.14 13:19 Sylwester Łazar
- 05.04.14 13:27 Sylwester Łazar
- 05.04.14 13:26 jacek pozniak
- 05.04.14 13:39 Sylwester Łazar
- 05.04.14 14:13 jacek pozniak
- 05.04.14 15:28 Sylwester Łazar
- 05.04.14 15:43 AlexY
- 05.04.14 15:49 jacek pozniak
Najnowsze wątki z tej grupy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
- Hiszpania bez pradu
- amperomierz w plusie
- 3G-nadal działa
- Historia pewnego miernika kalibratora
- Ustym 4k Pro i wyświetlacz
- Czemu rozwaliło celę?
- Wojna w portfelu
- Jaki trojfazowy licznik tuya lub podobny?
- Problem z dekoderem adresów
- Intel się wyprzedaje: po 10latach pchnęli pakiet kontrolny Altery za 1/4 kwoty zakupu
Najnowsze wątki
- 2025-05-17 Karol i Patrycja - a może wielka miłość jak Romeo i Julia
- 2025-05-17 Re: Pamientajta, aby zamknÄ Ä ryje, bo jest cisza wyborcza, a co powiecie
- 2025-05-17 Phishing obok nas.
- 2025-05-17 poznaj siłe swoich pieniędzy
- 2025-05-17 Warszawa => Senior IT Recruitment Consultant <=
- 2025-05-17 Warszawa => DevOps Engineer <=
- 2025-05-17 Warszawa => Junior Account Manager <=
- 2025-05-17 Warszawa => Senior Programmer C <=
- 2025-05-17 Polska => Senior Key Account Manager <=
- 2025-05-17 Migracje i przestępczość
- 2025-05-16 czy Seba naprawdę wróci do macierzy?
- 2025-05-15 coś pustawo u mechaników
- 2025-05-16 Warszawa => IT Data Analyst (obszar Power BI) <=
- 2025-05-16 Warszawa => Senior Backend Developer <=
- 2025-05-16 Warszawa => IT Hardware Specialist - Wsparcie i Konfiguracja <=