Forum Coders' city Strona Główna Coders' city
Nasza pasja to programowanie!
 

 PomocPomoc   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy  RejestracjaRejestracja 
Archiwum starego forum + teoria    RSS & Panel/SideBar
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Potrzebuję szybkiej odpowiedzi na moje pytanie... Skrócony regulamin

Napisać coś dla sprzętu

Idź do strony Poprzedni  1, 2, 3

 
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Elektronika, programowanie niskopoziomowe
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
StealthK



Dołączył: 14 Cze 2006
Posty: 1

PostWysłany: Sro Lut 03, 2010 6:33 am      Temat postu: Odpowiedz z cytatem Pisownia

Kamzor napisał:
izaw napisał:
Nieporozumienie.

g++ można przełączyć by zamiast skompilowanego kodu otrzymać przetłumaczony na tego assemblera. Ale który TO w końcu jest?

:)

Chyba rozumiem Twoje pytanie.
Translacja kodu, od C do maszynowego wygląda następująco:

Pliki *.c i *.h są łączone przez preprocesor. (aby pokazać efekt wywołaj kompilator z opcją -E (wielką literą - jest istotne dla kompilatora)). Wynik: na standardowe wyjście (monitor) dostaniesz plik, chyba że użyjesz opcji -o <nazwa_pliku> i zapiszesz plik z rozszerzeniem *.i.

Plik z rozszerzeniem *.i są kompilowane przez kompilator C do kodu asemblerowego (opcja GCC to -S). Dostaniesz pliki z rozszerzeniem *.S.

Pliki z rozszerzeniem *.i są asemblowane do pliku *.o (opcja gcc to -c ) Otrzymasz pliki z rozszerzeniem *.o

Pliki z rozszerzeniem *.o mogą być kompilowane z plikami *.a (biblioteki), do kodu wynikowego (maszynowego).

Dokładne informacje znajdziesz tutaj:
http://gcc.gnu.org/onlinedocs/gcc-4.4.3/gcc/Overall-Options.html#Overall-Options.

Myślę, że wystarczająco szczegółowo napisałem. :)[/url]
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
mikmas



Dołączył: 26 Maj 2005
Posty: 5617
Skąd: From Alex Stadt

PostWysłany: Pią Wrz 24, 2010 1:04 am      Temat postu: Odpowiedz z cytatem Pisownia

Po co za pomocą assemblera chcesz to pisać? Assembler jest najbliżej sprzętu i - przez to - jest najbardziej zróżnicowanym językiem, jaki kiedykolwiek chyba powstał. Różni się strasznie! Od samego nazewnictwa komend aż po zachowanie kodu samo w sobie. PC'towski assembler to - jak dla mnie oczywiście - resuscytacja 30-dniowych zwłok. Kiedyś może miał sens. Teraz jest to dość skomplikowany język. Pewnie przez zgodność wsteczną. W mikrokontrolerach jest kompletnie inaczej - wszystko jest sprowadzane do najprostszej (w końcu taką formę ma przyjąć asm) i najniższej postaci. Tam ma to sens grzebanie w asmie - co zresztą często się robi, jak się ma max. 20MHz pod maską :P

Jednak do czego zmierzam: najlepszym, najszerzej obsługiwanym, najoptymalniejszym, wieloplatformowym (nie tylko windows, linux. Są kompilatory do praktycznie każdego sprzętu) i jednocześnie prostym do zrozumienia językiem jest C, często C++. Jak chcesz się bawić w przeprogramowywanie układów - nie ma to sensu w assemblerze. Przynajmniej na początku

_________________
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS d- s---:--->+:+ a-->--- C++(+++) U-- P+ L-- E--
W++ N+ o-- K- w++(+++) O--- M-(--) V-- PS PE++ Y
PGP- t 5 X++ R tv- b+ DI- D+++(++++) G++ e h* r+ y?
------END GEEK CODE BLOCK------
Alternatywny komunikator GG
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Wyślij email Odwiedź stronę autora Numer GG Tlen
Wyświetl posty z ostatnich:   
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Elektronika, programowanie niskopoziomowe Wszystkie czasy w strefie CET (Europa)
Idź do strony Poprzedni  1, 2, 3
Strona 3 z 3

 
Skocz do:  
Możesz pisać nowe tematy
Możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Możesz dodawać załączniki na tym forum
Możesz pobierać pliki z tego forum




Debug: strone wygenerowano w 0.12314 sekund, zapytan = 7
contact

| Darmowe programy i porady Jelcyna | VB4all | Tansze zakupy w Helionie |