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



Teraz jest 11 mar 2026, o 03:51


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 14 ] 
Autor Wiadomość
 Tytuł: Asembler to C
PostNapisane: 23 sty 2015, o 17:11 
Offline
Nowy

Dołączył(a): 23 sty 2015
Posty: 5
Pomógł: 0

Cześć od dwóch dni próbuje rozgryźć kod w Asemblerze, a ponieważ znam się na nim jak na budowaniu min przeciwlotniczych to mi bardzo cienko idzie.
Czy byłby ktoś pomocny i przetłumaczył mi chociaż część kodu na język C?


Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Ostatnio edytowano 23 sty 2015, o 17:50 przez Joolte, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sty 2015, o 17:27 

Pomógł: 0

Czyli podsumowując: oczekujesz od kogoś poświęcenia ~1h godziny, aby Ci pomóc; natomiast sam nie byłeś w stanie poświęcić 30s i poprawnie użyć znaczników "syntax" w poście :roll:

To nie jest asm AVR, ino PIC ;) Może to Ci pomoże: klik


Autor postu otrzymał pochwałę


Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sty 2015, o 17:47 
Offline
Nowy

Dołączył(a): 23 sty 2015
Posty: 5
Pomógł: 0

A różni się czymś programowanie avr od pic?

PS. Masz racje z syntax, nie wiedzialem ze jest taka opcja, sorki ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sty 2015, o 18:59 
Offline
Użytkownik
Avatar użytkownika

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

Joolte napisał(a):
A różni się czymś programowanie avr od pic?
Na pewno różni się m.in. rozkazami asemblerowymi na dany procesor.

Pozdrawiam! j23 Jarek

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sty 2015, o 19:05 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Do niektórych "podzespołów" wbudowanych się inaczej podchodzi niż w przypadku AVR

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 11:11 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2605
Pomógł: 129

Sciagnij pdf ze strony producenta - tam masz liste rozkazow wraz z wyjasnieniem co robią. Niestety żeby zrozumieć 'wyrazy' musisz poznac 'alfabet'.
Najprosciej bedzie przeanalizować delaye - wyglądają bardzo podobnie - różnią się ilością powtórzeń instrukcji. Znając czas wykonywania instrukcji (nota procka) bedziesz mógł porównać założenia z faktycznym czasem trwania.

P. S. Assemblery różnią się między różnymi producentami (czasami nawet bardzo) Pice mają małą liczbę instrukcji (risc) wiec niektóre przeliczenia zajmują sporą liczbę instrukcji. Czyli cos co w C zajmie jedna krótką linijke w assemblerze może zająć ich np. kilkanaście.

Jak chcesz sobie pogłębić wiedzę to poczytaj o dekompilatorach na stronie dot. Ida Dissasembler Pro (w nawiazaniu do ARMow) - nie jest to łatwe zadanie dla programow-automatów (np zależy od kompilatora i optymalizacji). Ale na piechote spokojnie dasz rade jak sie przyłożysz.

Sent from my mobile.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 12:33 

Pomógł: 0

Joolte napisał(a):
A różni się czymś programowanie avr od pic?
Tak jak napisali przedmówcy - są inne rozkazy asm - to jest akurat mniejszy problem, bo chociażby na stronie którą podałem można łatwo odnaleźć opis każdego mnemonika. Drugi problem to inne peryferia mikrokontrolera.

Na pewno zdarzyło Ci się kiedyś czytać coś nudnego, kiedy miałeś głowę zajętą czymś innym albo byłeś zmęczony - efekt jest taki, że człowiek niby rozumie wyrazy które czyta, niby rozumie zdania... ale w sumie nie ma pojęcia o czymś jest ten tekst (jako całość) i w połowie nie pamięta co było na początku.

Nigdy nie miałem do czynienia z PIC'ami i przy czytaniu tego programu mam podobnie. Program wydaje się prosty i jest "okomentowany", jestem w stanie powiedzieć co robi 90% rozkazów ale nie potrafię ogarnąć całości. Np. rozumiem, że rozkaz z linii takiej a takiej zmienia bank rejestrów z 0 na 1. Niestety nie mam pojęcia po co, co z tego wynika itd...

Potrzebny jest ktoś kto ogarnia mikrokontrolery PIC ;)

Dodatkowe pytanie: co chcesz osiągnąć? Chcesz to przerobić na "kompilowalny" program w C, czy chcesz to przerobić na "pseudo-kod-o-składni-C" żeby zrozumieć ideę?

PS to jest program z jakiegoś breloka do wyszukiwania kluczy?



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 12:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

wwojtek napisał(a):

Potrzebny jest ktoś kto ogarnia mikrokontrolery PIC ;)



Polecam SunRiver'a. Od tego zaczynał (przynajmniej tak się chwalił) swoją przygodę z prockami. Ja też ale za mało liznąłem PICów żeby móc pomóc.

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 12:43 
Offline
Nowy

Dołączył(a): 23 sty 2015
Posty: 5
Pomógł: 0

wwojtek napisał(a):

Dodatkowe pytanie: co chcesz osiągnąć? Chcesz to przerobić na "kompilowalny" program w C, czy chcesz to przerobić na "pseudo-kod-o-składni-C" żeby zrozumieć ideę?

PS to jest program z jakiegoś breloka do wyszukiwania kluczy?


http://www.talkingelectronics.com/proje ... tle-1.html to jest program stąd wraz z opisem programu w odpowiedniej części.

Chciałbym go przerobić na w pełni kompilowalny program w C



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 13:47 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2605
Pomógł: 129

A na ile znasz C, bo jesli nie bardzo to sam tego nie zrobisz a inni raczej nie beda mieli na to czasu/ochoty, zeby za Ciebie to zrobic. Mozemy dac wędkę a nie rybkę ;) - wtedy sie dużo więcej nauczysz.
Ja sugeruje podzielic sobie kod na częsci (np. zaczynajac od delayow) i te czesci sobie zamieniać na C.

Sent from my mobile.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 14:22 
Offline
Nowy

Dołączył(a): 23 sty 2015
Posty: 5
Pomógł: 0

C w miare znam ale boje sie ze nie na tyle zeby to sobie przetlumaczyc



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 15:06 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2605
Pomógł: 129

A chcesz to przerobic na C i kompilowac na ten sam procesor czy zmieniac na inny?
P. S. Przełączanie banków jest po to aby np dostać się do konkretnych rejestrów.

Sent from my mobile.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 15:08 
Offline
Nowy

Dołączył(a): 23 sty 2015
Posty: 5
Pomógł: 0

hmm moze byc ten sam ale nie ukrywam ze lepsza bylaby atmega8



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sty 2015, o 15:27 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2605
Pomógł: 129

To szybciej Ci bedzie napisać od nowa samemu.

Sent from my mobile.



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: 14 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 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