Cześć Kolego moscow18-1990,
Postaram nie powtarzać tego co zostało już napisane przez moich Kolegów z forum o Assemblerze, a więc co do Twoich pytań:
moscow18-1990 napisał(a):
(...)Chciałem zapytać czy można napisać w Eclipse program w asemblerze "od A do Z", czy tylko wstawki?
Rozpatruj to w ten sposób: Eclipse to jest środowisko programowania, które posiada: edytor (wraz z podświetlaniem składni tak jak chcesz, czyli do języka programowania w jakim programujesz) + kompilatory (+konsolidator). Środowisko Eclipse może wykorzystywać domyślny (stworzony przez twórców Eclipsa) zestaw kompilatorów, lub dołączany z zewnątrz (a taka sytuacja występuje, gdy programując w C lub Assemblerze korzystasz np. z Atmel Toolchain, w skład którego wchodzi kompilator i do języka C i do języka Assembler). Czyli Eclipse ma w sobie takie "pudełko" dostarczone z zewnątrz gdzie siedzą sobie kompilatory danego producenta układów scalonych (w tym wypadku firmy Atmel).
W związku z powyższym, w edytorze Eclipse możesz wykorzystać to na co pozwala Ci zestaw kompilatorów - jeśli jest tam kompilator do Assemblera, możesz pisać program tylko w Assemblerze, jeśli jest kompilator do C - piszesz w C, jeśli kompilator do C daje możliwość wstawiania instrukcji typu "inline assembler" - to możesz pisać w C stosując wstawki assemblerowe. Reasumując i odpowiadając konkretnie na Twoje pytanie: możesz pisać program ze wstawkami assemblerowymi w C, albo pisać program w assemblerze od A do Z.
moscow18-1990 napisał(a):
(...)Jeżeli nie można to czy jest inne środowisko w którym można napisać program w samym asemblerze? I generalnie chciałem zapytać jak zacząć z nauką tego języka bo chciałbym poznać jakieś podstawy.
Tak na szybko znalazłem coś takiego ciekawego w sieci (nawet sam nie wiedziałem, że teraz takie fajne zabawki i ułatwienia są):
1.
Kompilator on-line do nauki Assemblera typu NASM (Netwide ASseMbler).2.
Składnia NASM (żeby wiadomo było jak pisać instrukcje, jakie są rejestry procesora, etc, etc.)Wykorzystując powyższe narzędzia tak na szybko* (*tzn. w zależności jak szybko będziesz wiedzę przyswajał) możesz oswoić się z taką ogólną assemblerową składnią. Nie potrzeba do tego kupować procesorów - bo symulujesz to co napiszesz od razu na stronie www. Potem jak kupisz mikrokontroler/procesor to on będzie miał swoje instrukcje, które będą napisane w dokumentacji. No właśnie - zanim kupisz to radzę sprawdzić, jak producent podchodzi w dokumentacji do wytłumaczenia jak stosować instrukcje assemblerowe. Nie zawsze tak całkiem jasno jest to w dokumentacji napisane.
Co do książek to ciężko mi cokolwiek polecić... Te z których ja się uczyłem, trochę się zdeaktualizowały, bo trzeba by dorwać jakiś stary komputer i zainstalować na początek DOS'a, żeby tak na "żywym organiźmie" uczyć się... -to trochę bez sensu. Lepiej od razu uczyć się na konkretnych mikrokontrolerach/procesorach. Ja zaczynałem naukę się z książki Jeffa Duntemanna "Zrozumieć Assembler", ale jest ona trochę przestarzała i tylko na procesory x86 (starsze), chociaż napisana jest świetnie. Dalej uczyłem się z książki Piotra i Pawła Gałka "Podstawy programowania mikrokontrolera 8051" - a do nauki używałem symulatora Jagoda (program instalowany na PC).
Pozdrawiam! j23