-
Data: 2014-04-05 11:10:32
Temat: Re: C vs. ASM na przykładzie PIC18F
Od: jacek pozniak <j...@f...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Sylwester Łazar wrote:
> Tak jak opisałem wcześniej, przygotowałem procedurę, która sortuje mi
> kilka napięć metodą zliczania:
> http://edu.i-lo.tarnow.pl/inf/alg/003_sort/0023.php
>
> Jako, że ostatnio toczą się dyskusje o kompilatorach C,
> pozwoliłem sobie zrobić prosty test.
>
> Napisałem procedurę w ASM i w C.
> Oczywiście obie działają poprawnie.
> 1) Objętość kodu ma się następująco (dla otymalizacji Debug):
> 470 bajty kodu w C
> 128 bajty kodu w ASM
> ...
To ja podam wyniki kompilacji Twojego kodu:
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
Następne wpisy z tego wątku
- 05.04.14 11:34 Michał Lankosz
- 05.04.14 11:43 jacek pozniak
- 05.04.14 11:49 Sylwester Łazar
- 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
Najnowsze wątki z tej grupy
- Dławik CM
- JDG i utylizacja sprzetu
- Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO