Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 22 lut 2025, o 12:54


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 22 sie 2015, o 12:42 
Offline
Użytkownik

Dołączył(a): 15 sie 2014
Posty: 87
Pomógł: 0

Dzień Dobry

Chciałem zapytać czy można napisać w Eclipse program w asemblerze "od A do Z", czy tylko wstawki? 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.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2015, o 13:35 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27359
Lokalizacja: Szczecin
Pomógł: 1042

moscow18-1990 napisał(a):
czy jest inne środowisko w którym można napisać program w samym asemblerze?

A nie przyszło ci zajrzeć do podstawowego środowiska producenta czyli Atmel Studio ? ... po to ono jest m.in ;)

moscow18-1990 napisał(a):
I generalnie chciałem zapytać jak zacząć z nauką tego języka bo chciałbym poznać jakieś podstawy.

Poszukaj książek Pana Baranowskiego z BTC np "Mikrokontrolery ATmega w praktyce" ... itp


Autor postu otrzymał pochwałę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2015, o 16:18 
Offline
Użytkownik

Dołączył(a): 15 sie 2014
Posty: 87
Pomógł: 0

A mam jeszcze takie pytanko. W tej książce Pana Baranowskiego w spisie treści jest napisane "Asembler dla AVR" i zastanawia mnie to "dla AVR". To co np. dla MSP430 lub STM32 jest inny asembler? Może pytanie głupie, ale nigdy nie miałem nigdy nic wspólnego z tym językiem programowania i zastanawia mnie to czy jak nauczę się trochę asemblera dla AVR to np. jak będę pisał kiedyś w asemblerze na MSP430(texas instruments) to będzie to dokładnie to samo, albo czy przynajmniej będą jakieś analogie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2015, o 16:27 
Offline
Użytkownik

Dołączył(a): 25 lut 2015
Posty: 252
Lokalizacja: Lublin
Pomógł: 23

Każda rodzina procesorów ma swój zestaw rozkazów.
Specyfiką asemblera jest właśnie to, że jest to język dedykowany pod sterowanie niskopoziomowe konkretnym procesorem.
Stąd będzie inny zestaw rozkazów w asemblerze pod te procesory.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2015, o 18:39 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27359
Lokalizacja: Szczecin
Pomógł: 1042

Tak jak napisał wyżej kolega KAŻDA rodzina procków ma swój własny i to zwykle CAŁKOWICIE inny asembler. To nie jest panie kochany język C ;)


Autor postu otrzymał pochwałę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2015, o 00:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 wrz 2014
Posty: 1530
Lokalizacja: Warszawa
Pomógł: 55

Można - obejrzyj mój post:
viewtopic.php?t=11193
Można też bez Eclipse - wystarczy dowolny edytor tektów, gavrasm i avrdude.
Jak napiszesz coś w jednym asm, to potem możesz w innym. Asembler swoimi komendami odzwierciedla architekturę procesora, więc musisz ją dobrze poznać.
Z tym, że możesz zrobić 1000 projektów, zanim wyjdziesz poza możliwości AVR, nawet jak będziesz chciał lecieć na Marsa.


Autor postu otrzymał pochwałę

_________________
--... ...-- - --- -- . -.-



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2015, o 01:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 maja 2014
Posty: 317
Pomógł: 19

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


Autor postu otrzymał pochwałę

_________________
"O sygnałach bez całek" Czesław Frąc



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 wrz 2015, o 20:47 
Offline
Użytkownik

Dołączył(a): 15 sie 2014
Posty: 87
Pomógł: 0

W sumie zadam pytanko z innej beczki, nie chciałbym zakładać nowego wątku a zapytać w sumie nie mam kogo, więc zapytam tutaj. Chodzi o funkcje malloc,calloc,realloc i free a mianowicie pytanie brzmi czy dynamiczna alokacja pamięci jest używana w programowaniu mikrokontrolerów? Pytam, ponieważ oprócz bluebooka przerabiam jeszcze książkę która dotyczy tylko i wyłącznie wskaźników. Pojawia się w niej to zagadnienie i zastanawia mnie czy jest ono istotne w odniesieniu do mikrokontrolerów?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 wrz 2015, o 20:57 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 maja 2014
Posty: 317
Pomógł: 19

Tak.
Malloc: http://www.nongnu.org/avr-libc/user-manual/malloc.html
Calloc: http://www.atmel.com/webdoc/AVRLibcReferenceManual/group__avr__stdlib_1ga51ac965dacbc9daf922f469bdcfe00c2.html
Realock: http://www.atmel.com/webdoc/AVRLibcReferenceManual/group__avr__stdlib_1gafd300bad8b4dd2e88b07d464d76c92aa.html
Free: http://www.atmel.com/webdoc/AVRLibcReferenceManual/group__avr__stdlib_1gafb8699abb1f51d920a176e695ff3be8a.html

Pozdrawiam! j23 Jarek


Autor postu otrzymał pochwałę

_________________
"O sygnałach bez całek" Czesław Frąc



Ostatnio edytowano 9 wrz 2015, o 21:01 przez j23, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO