srodowisko c/c++ pod 8051

0

Wlasnie, potrzebuyje srodowiska c++ ewentualnie c pod procesor 8051/52/513 moze ktos cos poradzic na to?

0

Po pierwsze to google, po drugie nie wyobrażam sobie pisania w C (a już tym bardziej C++, co jeszcze, może Java?) na 8051 bo to jest bardzo specyficzna architektura i dobry kod można napisać tylko w assemblerze.

0

Po pierwsze to google, po drugie nie wyobrażam sobie pisania w C (a już tym bardziej C++, co jeszcze, może Java?) na 8051 bo to jest bardzo specyficzna architektura i dobry kod można napisać tylko w assemblerze.

Heh heh. Widać że ktoś tu mikrokontrolerów nie programuje ;P
Programować w C można chyba wszystkie mikrokontrolery rodziny '51 - kwestia kompilatora. I to z całkiem niezłym skutkiem. Twierdzenie że dobry kod można napisać tylko w assemblerze jest twierdzeniem baaardzo mocno naciąganym - to tak jakby twierdzić że pisanie programów komputerowych w assemblerze jest lepsze niż pisanie np. w Builderze.
Pisząc programy w C kod wynikowy może i będzie trochę dłuższy niż w czystym assemblerze, ale ja wolę napisać jedną linijkę i mieć gotową pętlę niż kombinować jak koń pod górkę żeby posklejać coś 'petlopodobnego' z poleceń asm. Swoją drogą - co to za język w którym nie ma pętli? Jakoś tego nie trawię... Już chyba nie to pokolenie :D
Zresztą kompilatory C cały czas są ulepszane i kod wynikowy jest coraz lepiej optymalizowany, nigdy nie wiadomo czy daną funkcję napiszesz krócej samemu w asm czy ktoś ją już sprytnie zaimplementował w kompilatorze wyższego rzędu...
Ja bym się wcale nie zdziwił gdybym znalazł programator mikrokontrolerów w Javie. Zresztą każdy język jest dobry. I tak wszystko jest w końcu tłumaczone na polecenia asm. Bascom np. opiera się na czymś podobnym do Basic'a.

A wracając do pytania - polecam faktycznie skorzystać z wyszukiwarki albo wejść na formu elektrody <url>www.elektroda.pl</url>. Masz tam dział mikrokontrolery gdzie znajdziesz całą masę przykładów i kompilatorów najróżniejszych języków, w tym C. Miałem kiedyś książkę o programowaniu '51 w C i był tam podany taki fajny program, ale niestety nie pamiętam jaki :( Znajdziesz coś na forum elektrody.

Wesołych świąt [!!!]

0

Małe OT:

Pisząc programy w C kod wynikowy może i będzie trochę dłuższy niż w czystym assemblerze, ale ja wolę napisać jedną linijkę i mieć gotową pętlę niż kombinować jak koń pod górkę żeby posklejać coś 'petlopodobnego' z poleceń asm. Swoją drogą - co to za język w którym nie ma pętli? Jakoś tego nie trawię... Już chyba nie to pokolenie :D
Zresztą kompilatory C cały czas są ulepszane i kod wynikowy jest coraz lepiej optymalizowany, nigdy nie wiadomo czy daną funkcję napiszesz krócej samemu w asm czy ktoś ją już sprytnie zaimplementował w kompilatorze wyższego rzędu...

A programista asm zawsze może wziąć kod wynikowy wygenerowany przez kompilator np. C i jeszcze bardziej go zoptymalizować.
To, że nie ma niczego pętlopodobnego* to nie jest wcale wada, ale zaleta. Pętle są ogromnie czasożerne, więc jak jest możliwość sprytnego napisania programu bez pętli, to warto spróbować tak zrobić.

    • nie jest to całkiem prawda, bo pętlopodobne konstrukcje istnieją w asm. Być może co innego rozumiemy jako pętla, ale ja mam spojrzenie na konstrukcje języków wysokiego rzędu bardziej od strony asm, więc to co dla mnie jest pętlą nie musi byc dla ciebie.
0

8051 programowałem właśnie w assemblerze na zajęciach, niewiele bo niewiele, ale architekturę tej rodziny poznać zdążyłem. Być może pisząc poprzednie stwierdzenie nie doceniłem umiejętności programistów kompilatorów, ale przynać trzeba że w 8051 pamięć i ilość kombinacji rejestrów/instrukcji jest dosyć ograniczona co skutecznie utrudnia generację optymalnego kodu. W mikrokontrolerze z zegarem 12MHz optymalność kodu często ma większe znaczenie niż w procesorze z zegarem 3GHz.

0

a tak wracajac do tematu, zna ktos co s takiego?

1 użytkowników online, w tym zalogowanych: 0, gości: 1