Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Porównanie języków programowania
SP5FCS Offline
Adam
*****

Liczba postów: 1,071
Dołączył: 02-02-2009
Post: #1
Porównanie języków programowania
W kilku wątkach trwała dyskusja na temat zalet i wad różnych języków programowania mikroprocesorów. Padało wiele argumentów za i przeciw na podstawie posiadanej wiedzy, doświadczeń oraz preferowanej wygody podczas tworzenia programowania. Takie opisowe porównanie jest bardzo subiektywne i utrudnia rzetelną ocenę efektywności poszczególnych języków.
Zdecydowanie lepszą metodą byłoby wykonanie kilku praktycznych testów i porównanie np. wielkość generowanego kodu oraz czasu jego wykonania. Taka metoda pozwoliłaby np. porównać same języki (assembler, bascom, C), różne kompilatory a nawet porównywać możliwości różnych mikroprocesorów. To kwestia opracowania kilku prostych zadań do wykonania oraz chęci kilku Kolegów znających różne języki programowania oraz procesory.


Assembler AVR
- darmowe środowisko producenta procesorów AVR Studio
- brak gotowej arytmetyki na długich formatach 32, 64bit, float

C w środowisku WinAVR
- darmowy kompilator zintegrowany z AVR Studio
- dostępne formaty i arytmetyka na 64bit oraz float

C w codeVision
- płatne środowisko ~829zł, demo do 4kB kodu
- dostępny format i arytmetyka na float, brak formatu 64biy

Bascom AVR
- płatne środowisko ~478zł, demo do 4kB kodu
- dostępny format i arytmetyka float oraz format 8 bajtowy double

Zadanie testowe TEST_1
Prawie w każdym języku powstało oprogramowanie do obsługi syntezy na AD9951. Ciekawe jak wypadłoby porównanie funkcji obliczającej nastawę dla AD9951, ile kodu i czasu pochłonie taka pozornie prosta funkcja ?

Kod:
Test_1 - obliczenie nastawy dla AD9951
// zmienne globalne w RAM-ie procesora
f_clock= 400000000;  //400MHZ na 4 bajtach
f_vfo   =  20000000;  //   20MHZ na 4 bajtach
FTW                       // nastawa dla DDS-a na 4 bajtach

FTW=2^32*f_vfo/f_clock   // obliczenie nastawy dla DDS-a, wynik w FTW na 4 bajtach

//wynik testu:
   - wielkość kodu w bajtach,
   - ilość taktów procesora od RESET do umieszczenia danych w zmiennej FTW

Zapraszam do udziału w teście, mogę napisać funkcje w assemblerze i C-CodeVision na procesory AVR.

73 Adam
30-03-2012 0:19
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
Porównanie języków programowania - SP5FCS - 30-03-2012 0:19

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości