<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=24&amp;t=5646&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-01-26T10:53:30+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=24&amp;t=5646&amp;mode</id>
<entry>
<author><name><![CDATA[Dregorio]]></name></author>
<updated>2014-01-26T10:53:30+01:00</updated>
<published>2014-01-26T10:53:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66711#p66711</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66711#p66711"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66711#p66711"><![CDATA[
<div class="quotetitle">charsz napisał(a):</div><div class="quotecontent"><br />Moze przwrotne pytanie, umiesz pisac i w tym i w tym? Czy w zadnym i dopiero planujesz sie nauczyc?<br /></div><br />Oczywiście, C to mój pierwszy język i z nim codziennie, poza uczelnią(w pracy) się stykam. Natomiast asm nauczyłem się stosunkowo niedawno jakieś 2 lata temu, mam na koncie kilka projektów w nim, myślę że sobie poradzę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2504">Dregorio</a> — 26 sty 2014, o 10:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2014-01-24T19:44:53+01:00</updated>
<published>2014-01-24T19:44:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66498#p66498</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66498#p66498"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66498#p66498"><![CDATA[
<div class="quotetitle">PROTON napisał(a):</div><div class="quotecontent"><br />Macie racje, ale pytanie brzmiało.<br /></div><br /><br />ale zauważ że trzeba całośc wziąć pod uwagę by mieć wiedzę na temat całości a nie fragmentarycznie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2014, o 19:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PROTON]]></name></author>
<updated>2014-01-24T19:23:05+01:00</updated>
<published>2014-01-24T19:23:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66495#p66495</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66495#p66495"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66495#p66495"><![CDATA[
Macie racje, ale pytanie brzmiało.<br /><div class="quotetitle">Dregorio napisał(a):</div><div class="quotecontent"><br />Jestem ciekaw jak się ma wydajność programów napisanych w C i ASM<br /></div><br />Do migania diodą nie ma sensu pisać programu w Assembly, ale są przypadki że warto w nim się &quot;pomęczyć&quot;. <br />Na przykład, przy funkcjach przetwarzających duże ilości danych takich jak, filtry FIR/IIR, obliczeniach na macierzach.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1315">PROTON</a> — 24 sty 2014, o 19:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-01-24T18:18:36+01:00</updated>
<published>2014-01-24T18:18:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66483#p66483</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66483#p66483"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66483#p66483"><![CDATA[
<div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />przytocz całą tabelkę a nie stawiasz na jedno porównanie:<br /></div><br /><br />No właśnie ludziska to mają jakąś taką tendencję - żeby tak na jedną stronę ściągać <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />tymczasem cała tabelka pokazuje TYLKO JEDNĄ rzecz<br /><br />Dla różnych projektów może być różna WAGA różnych czynników i priorytetów. A wtedy programista, który zna dwa języki jest w stanie wybrać do każdego projektu ten język który lepiej spełni swoje zadania ...<br /><br />np do ATtiny10 ciężko myśleć o C ... chociaż też można jeśli ma tylko procek coś tam włączać i wyłączać - zdecydowanie lepiej przeorać go asemblerem jak ma robić dużo więcej<br /><br />za to ATmega2560 która ma obsługiwać np: Ethernet, kartę pamięci, transmisję RS232/485, komunikację radiową, wyświetlacz TFT, wielokanałowy ADC i kupę innych rzeczy ... no to - powodzenia w tworzeniu tego w asm. I nie chodzi o to że się nie da <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> bo się da - tylko po co ? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> skoro w C będzie milion razy szybciej i wygodniej ...<br /><br />chyba że się komuś nie śpieszy - ma rok czasu na zabawy, to czemu nie asm <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> nawet dla treningu mózgu itp <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> każdy zrobi to co lubi<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 24 sty 2014, o 18:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2014-01-24T17:34:35+01:00</updated>
<published>2014-01-24T17:34:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66478#p66478</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66478#p66478"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66478#p66478"><![CDATA[
<div class="quotetitle">PROTON napisał(a):</div><div class="quotecontent"><br />W tym pliku jest ładna tabelka która wszystko wyjaśnia: <br />Table 1. The Pluses and Minuses of C and Assembly<br /></div><br /><br />przytocz całą tabelkę a nie stawiasz na jedno porównanie:<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/58/be118d100c514bc4127715ffd0b858c5.JPG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/58/be118d100c514bc4127715ffd0b858c5.JPG" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2014, o 17:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PROTON]]></name></author>
<updated>2014-01-24T15:28:09+01:00</updated>
<published>2014-01-24T15:28:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66470#p66470</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66470#p66470"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66470#p66470"><![CDATA[
<div class="quotetitle">PKoz napisał(a):</div><div class="quotecontent"><br />Polecam lekturę:<br />AVR034: Mixing C and Assembly Code with<br />IAR Embedded Workbench for AVR<br /></div><br /><br />W tym pliku jest ładna tabelka która wszystko wyjaśnia: <br /><strong>Table 1. The Pluses and Minuses of C and Assembly</strong><br />Na plus Assembly: <strong>Compact/fast code in small applications</strong><br />Na minus C: <strong>Larger/slower code in small applications</strong><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1315">PROTON</a> — 24 sty 2014, o 15:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2014-01-23T20:03:57+01:00</updated>
<published>2014-01-23T20:03:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66383#p66383</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66383#p66383"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66383#p66383"><![CDATA[
Jako napisałem na początku tak też i wychodzi na koniec ..  Tu niestety taka jest bolesna prawda ..  <br />a z niejednego  procka już jadłem ...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 23 sty 2014, o 20:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-01-23T19:51:27+01:00</updated>
<published>2014-01-23T19:51:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66380#p66380</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66380#p66380"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66380#p66380"><![CDATA[
To może wyjaśnię albo doprecyzuję, ja praktycznie naukę każdego mikroklocka (jak do tej pory) zaczynałem tylko od asemblera ... również tak samo było z AVR'ami i na początku pisałem swoje projekty TYLKO i WYŁĄCZNIE w asemblerze na AVR'kach<br /><br />z takich znanych projektów, które gdzieś publicznie udostępniłem to np:<br /><br /><!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2013/07/nietypowy-zegarekbudzik-z-pilotem-z.html" >http://mirekk36.blogspot.com/2013/07/ni ... tem-z.html</a><!-- m --><br /><br />.... ale ... ale wtedy jeszcze nie znałem ani Bascoma ani języka C .... po prostu gdy się zabrałem po 10 letniej przerwie za procki to okazało się, że jakbym przeżył podróż do przyszłości <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> ... bo kiedyś to nie było żadnych tam frykasów jak Basco czy C ... ot brało się SZPADEL i kopało w asemblerze ...<br /><br />a tu po powrocie do przyszłości okazało się, że są języki wyższego rzędu ... i myślicie że czekałem ? ... nie ... od razu zacząłem korzystać GARŚCIAMI .... bo korzystanie z któregokolwiek z nich czy to:<br /><br />- Bascom<br />- Arduino<br />- Język C<br />- Język C++<br /><br />to powodowało że prosty projekt - a nie czarujmy się takich jest wiele <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... zaczęło się tworzyć w przysłowiową godzinkę a nie w dwa miesiące .... Ten zegarek z linku pisałem, gdyby zebrać czas do kupy, chyba z miesiąc !!!<br /><br />Więc tak się składa, że nie piszę tego z pozycji człowieka, który zna tylko jeden język programowania dla procków, ale kilka, w tym asembler dla AVR (ocenię nieskromnie - zadowalająco)..... Mam więc porównanie na własnej skórze ...<br /><br />Dlatego sorki, ale ...<br /><div class="quotetitle">PROTON napisał(a):</div><div class="quotecontent"><br />W ASM da radę napisać dużo bardziej optymalny kod niż da nam kompilator C<br /></div><br /><br />nie odnoszę się teraz broń boże złośliwie .... ale to jest bodajże NAJWIĘKSZE nieporozumienie jakie powtarzają zwolennicy tylko asemblera, tak samo zresztą jak jest wiele nieporozumień bezsensownych tych ludzi, którzy mówią że TYLKO C jest najlepszy <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />To zacytowane zdanie wyżej - zawsze pokazuje tylko to, że ktoś kto posługuje się takim argumentem być może nie zna tego języka C ... bo jak się go pozna <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> to nikt by nie mówił że:<br /><br />1. korzysta z C po to żeby pisać wydajniejsze programy niż w ASM - bo go to nie obchodzi - tu liczy się czas tworzenia projektu<br /><br />2. korzysta z C po to żeby tworzyć bardzo czaso-zależne procedury (patrz cykl poradników n/t magic LED <a href="http://www.youtube.com/playlist?list=PLtXXWLsA5QNi9bhuG5DT1T3jwua5p-vkv"  class="postlink">LINK</a> )<br /><br />a na zakończenie dodam, że 1000x lepiej jest umieć wybrać wyjście pośrednie - czyli poznać kilka narzędzi bo wtedy nie dość że łatwiej będzie w głowie dokonywać ocen zamiast mieć klapki na oczach i wykłócać się który język jest lepszy to jeszcze okaże się, że w jednym projekcie będzie można skorzystać z połączenia obu języków naraz. I nie ważne czy to będzie:<br /><br />a.) Bascom ze wstawkami w asemblerze<br />b.) język C ze wstawkami w asemblerze<br />c.) Arduino ze wstawkami w asemblerze<br /><br />i mam nadzieję, że ten cykl poradników o Magic LED będzie takim dobrym przykładem ....<br /><br />więc proszę - zakończcie przekonywanie się nawzajem który język jest lepszy .... szczególnie podając takie zdanie jak zacytowałem powyżej bo jestem w stanie udowodnić niejednej osobie, która twierdzi że zna asembler AVR dobrze, że w wielu przypadkach kod asemblerowy wygenerowany przez byle kompilator C będzie o wiele lepszy <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... Tylko nie łapcie mnie tu zaraz za słowa - że mówię o WSZYSTKICH którzy znają asembler ... bo zaraz będzie niepotrzebna wojna <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... a nie o to mi chodzi ... <br /><br />po raz chyba MILIONOWY przytoczę przysłowie:<br /><br /><span style="color: #FF0000"><strong>&quot;KAŻDY JĘZYK PROGRAMOWANIA JEST TYLKO TAK DOBRY JAK PROGRAMISTA, KTÓRY SIĘ NIM POSŁUGUJE&quot;</strong></span><br /><br />i Qniec<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 23 sty 2014, o 19:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[micky]]></name></author>
<updated>2014-01-23T20:34:49+01:00</updated>
<published>2014-01-23T19:11:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66368#p66368</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66368#p66368"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66368#p66368"><![CDATA[
Wydaje mi sie ze Mirek coś tam w asmie skrobnal <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />  moze nie na AVRki ale na inne mikrokontrolerki oraz na PC. <br />Co do odpowiednika ROR i ROL to mozna to zrobic w jednej linijce jak to pokazal Mirek z sierzantami i pewnikiem bedzie to wiecej instrukcji niz jeden ROR w asm. <br />Ja kiedyś zrobilem wstawke w asm do programiku w C wlasnie z powodu braku ROR'a <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />Co do pętli w C to mozna bylo wykorzystać na PC modyfikator register - wtedy kompilator staral sie przydzielac wolny rejestr zamiast RAMu<br /><br />Sent from my mobile.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1546">micky</a> — 23 sty 2014, o 19:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[AndreAs]]></name></author>
<updated>2014-01-23T19:03:00+01:00</updated>
<published>2014-01-23T19:03:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66365#p66365</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66365#p66365"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66365#p66365"><![CDATA[
Dzisiaj robiąc duży projekt na asemblerze zaczął byś jako młody człowiek a skończyłbyś go odchodząc na emeryturę <br />dlatego przyszłość jest językach wysokiego poziomu i w językach opisowych sprzętu .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2092">AndreAs</a> — 23 sty 2014, o 19:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PROTON]]></name></author>
<updated>2014-01-23T16:53:17+01:00</updated>
<published>2014-01-23T16:53:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66339#p66339</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66339#p66339"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66339#p66339"><![CDATA[
W ASM da radę napisać dużo bardziej optymalny kod niż da nam kompilator C, ale w większości przypadków nie ma to sensu. Pisząc w assembly nie musimy się trzymać ABI(Aplication Binary Inerface) przy pisaniu własnych funkcji.  <br />Po drugie, niektóre instrukcje w ASM nie mają odpowiednika w C, np ROR czy ROL. <br />Po trzecie, łatwiej korzystać ze specjalnych instrukcji czy rejestrów procesora, np. MMX, SSE. <br />Po czwarte, obliczenia w pętli można robić na rejestrach bez odwoływania się do pamięci, podnosi to drastycznie wydajność.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1315">PROTON</a> — 23 sty 2014, o 16:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-01-23T10:04:05+01:00</updated>
<published>2014-01-23T10:04:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66287#p66287</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66287#p66287"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66287#p66287"><![CDATA[
Zobacz na Mirka jaką drogę przeszedł. Zresztą fajnie w jego poradnikach widać, kiedyś stronił od ASMa, teraz ładnie wchodzi z asmem kiedy potrzeba.<p>Statystyki: Napisane przez Gość — 23 sty 2014, o 10:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[charsz]]></name></author>
<updated>2014-01-23T10:01:05+01:00</updated>
<published>2014-01-23T10:01:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66286#p66286</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66286#p66286"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66286#p66286"><![CDATA[
Moze przwrotne pytanie, umiesz pisac i w tym i w tym? Czy w zadnym i dopiero planujesz sie nauczyc?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=926">charsz</a> — 23 sty 2014, o 10:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[0livaw]]></name></author>
<updated>2014-01-23T09:35:36+01:00</updated>
<published>2014-01-23T09:35:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66283#p66283</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66283#p66283"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66283#p66283"><![CDATA[
Dawniej na mikrokontrolery pisało się tylko w asm, ponieważ nie było zbyt dużo pamięci.<br />Ale czasy się zmieniają i dziś raczej tylko C. Pisanie w asm dużych programów jest czasochłonne.<br /><br />Do obliczeń w asm np. na liczbach 16 bitowych trzeba pisać własne procedurki. Ale z drugiej strony,<br />raz napisane służą latami. Uważam że, każdy kto zajmuje się programowaniem mikrokontrolerów,<br />powinien chociaż jeden projekt napisać w asm, aby mieć jakieś pojęcie co daje asm.<br /><br />Jak chcesz sobie porównać wydajność kodu asm i C to napisz program wyświetlający cokolwiek<br />na LCD. Napisz go w C a poźniej w asm. Ciekawe jaka będzie różnica. I jeszcze zmierz sobie<br />czas, w jakim napisałeś każdy z programów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1304">0livaw</a> — 23 sty 2014, o 09:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-01-23T09:09:07+01:00</updated>
<published>2014-01-23T09:09:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66282#p66282</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66282#p66282"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66282#p66282"><![CDATA[
Zawsze przecież można napisać w C, potem wejść do pliku .lss i zobaczyć jak nam kompilator wysmarował asm. Wtedy można próbować zoptymalizować coś wstawką asemblerową.<br />Dróg jest wiele. Dobrze napisany program w C wymaga tylko wstawek.<br />Z drugiej strony jeżeli zależy ci na tak szybkiej reakcji nie wiem czy nie lepszym wyborem nie było by FPGA, gdzie możesz zadania wykonywać równolegle.<p>Statystyki: Napisane przez Gość — 23 sty 2014, o 09:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Intre]]></name></author>
<updated>2014-01-23T01:28:09+01:00</updated>
<published>2014-01-23T01:28:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66275#p66275</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66275#p66275"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66275#p66275"><![CDATA[
Nie wiem pod jaki procesor chcesz pisać obsługę tego quadrocopter`a ale można też z tego co wiem oprócz optymalizacji wstawkami asm zastosować także przetaktowanie procesora za pomocą wyższego rezonatora kwarcowego.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1356">Intre</a> — 23 sty 2014, o 01:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xbary]]></name></author>
<updated>2014-01-22T23:30:31+01:00</updated>
<published>2014-01-22T23:30:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66267#p66267</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66267#p66267"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66267#p66267"><![CDATA[
No to napiszę coś w poprzek <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> ... w assemblerze da się wydajniejszy kod napisać niż w C.<br /><br />Mamy takie czasy że kilka razy do roku pojawiają się nowe procesory, czy to do PC czy inne, a kompilatory nieraz są po kilka lat nie zmieniane, przynajmniej pod kątem optyminimalizacji kodu wynikowego pod kątem szybkości.<br />Przykład: kiedy to Iyntel wprowadził pierwszy Pentium, nagle okazało się że w jednym takcie zegarowym mogą się wykonać 4 instrukcje assemblerowe. Jak to działało, otóż w nowym procesorze jednostkę matematyczną oddzielono od reszty, cześć odpowiedzialną za operacje na pamięci RAM też oddzielono - przez co uzyskano taki efekt że jak ułożyliśmy instrukcje w takiej kolejności:<br />ADD<br />MOV<br />SUB<br />MOV <br />to Pentium wykonał je o wiele szybciej niżby ułożyć w taki sposób:<br />ADD<br />SUB<br />MOV<br />MOV<br /><br />i teraz pytanie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> czy ten trik na optymalizacje  wykorzystują kompilatory do budowania kodu wynikowego ? na tamte czasy na pewno nie ... było to zawsze tradycyjnie podejście (no może kompilator Intela).<br /><br />Zmierzam do tego, że jeśli wyjdzie nowa atmega czy stm32 to można się spodziewać że twórcy procesora takie czy podobne triki optymalizacyjne <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> wprowadzą do możliwości kodu maszynowego, a kompilatory niestety stoją w miejscu jeśli chodzi o te nowości.<br /><br />Oczywiście <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> w dzisiejszych czasach wszystko dzieje się szybko <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> więc i te kompilatory C też będą podążały za postępem...<br /><br />---<br /><br />Odpowiadając na pytanie na początku: należałoby jeszcze zbadać na ile szybkie są peryferia układu/całej aplikacji - może się zdarzyć że procesor będzie się nudził przez pewien procent sekundy <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> więc wstawki assemblerowe mogą być zupełnie nie potrzebne w takim przypadku.<br /><br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=447">xbary</a> — 22 sty 2014, o 23:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2014-01-22T22:54:03+01:00</updated>
<published>2014-01-22T22:54:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66262#p66262</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66262#p66262"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66262#p66262"><![CDATA[
hehehe....<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 22 sty 2014, o 22:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Maksio]]></name></author>
<updated>2014-01-22T22:47:23+01:00</updated>
<published>2014-01-22T22:47:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66261#p66261</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66261#p66261"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66261#p66261"><![CDATA[
Hmm.. szczerze powiedziawszy muszę się przyznać, ani nawet na chwilę przez głowę mi taka myśl nie przeszła, aż tak wybujałej wyobrazni to chyba nie mam   <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1041">Maksio</a> — 22 sty 2014, o 22:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2014-01-22T22:38:01+01:00</updated>
<published>2014-01-22T22:38:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66257#p66257</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66257#p66257"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66257#p66257"><![CDATA[
<div class="quotetitle">Maksio napisał(a):</div><div class="quotecontent"><br />W dzisiejszych czasach dokładnie tak się robi, przeważnie piesze się kod w języku wysokiego poziomu np. w C i używa wstawek ASM, chociaż podam taki przykład: kiedyś tam komuś, pamiętam sprzedałem raz jakąś książkę o mikrokontrolerach firmy ST bodajże, gdzie wszystkie kody, instrukcje, wszystko w kodzie maszynowym podane było, gdy już ten ktoś zapłacił, spytałem po co mu to wogóle? patrzyłem na niego ze zdziwieniem, ten mi odparł, że robią właśnie jakiś sterownik do lokomotywy... Założenia odgórne były takie że 100% panowania nad kodem, jednym słowem nie ma miejsca na pomyłkę, wtedy przestało mnie to dziwić. Ale tak ogólnie z tego co widzę, raczej rzadko w dzisiejszych czasach realizuje sie projekty w oparciu o asembler a zwłaszcza te duże.<br /></div><br />Wiesz, z tego co napisałeś wynika, że ci którzy programują w ASM nie popełniają błędów... <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=189">MirkoT</a> — 22 sty 2014, o 22:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Dregorio]]></name></author>
<updated>2014-01-22T22:12:17+01:00</updated>
<published>2014-01-22T22:12:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66249#p66249</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66249#p66249"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66249#p66249"><![CDATA[
No to o to mi chodziło, podziękował<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2504">Dregorio</a> — 22 sty 2014, o 22:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Maksio]]></name></author>
<updated>2014-01-22T22:02:26+01:00</updated>
<published>2014-01-22T22:02:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66245#p66245</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66245#p66245"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66245#p66245"><![CDATA[
<div class="quotetitle">Dregorio napisał(a):</div><div class="quotecontent"><br />Czyli operacje robić w C, a przesyłać w ASM?<br /></div><br />Nie bardzo rozumiem pytanie, ale jak to sie robi to już napisał kolega SunRiver tj. pisze się normalnie kod w języku C ale korzysta się z wstawek ASM w miejscach krytycznych czasowo.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1041">Maksio</a> — 22 sty 2014, o 22:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Dregorio]]></name></author>
<updated>2014-01-22T21:57:31+01:00</updated>
<published>2014-01-22T21:57:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66243#p66243</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66243#p66243"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66243#p66243"><![CDATA[
Czyli operacje robić w C, a przesyłać w ASM?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2504">Dregorio</a> — 22 sty 2014, o 21:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Maksio]]></name></author>
<updated>2014-01-22T21:50:44+01:00</updated>
<published>2014-01-22T21:50:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66240#p66240</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66240#p66240"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66240#p66240"><![CDATA[
W dzisiejszych czasach dokładnie tak się robi, przeważnie piesze się kod w języku wysokiego poziomu np. w C i używa wstawek ASM, chociaż podam taki przykład: kiedyś tam komuś, pamiętam sprzedałem raz jakąś książkę o mikrokontrolerach firmy ST bodajże, gdzie wszystkie kody, instrukcje, wszystko w kodzie maszynowym podane było, gdy już ten ktoś zapłacił, spytałem po co mu to wogóle? patrzyłem na niego ze zdziwieniem, ten mi odparł, że robią właśnie jakiś sterownik do lokomotywy... Założenia odgórne były takie że 100% panowania nad kodem, jednym słowem nie ma miejsca na pomyłkę, wtedy przestało mnie to dziwić. Ale tak ogólnie z tego co widzę, raczej rzadko w dzisiejszych czasach realizuje sie projekty w oparciu o asembler a zwłaszcza te duże.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1041">Maksio</a> — 22 sty 2014, o 21:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Dregorio]]></name></author>
<updated>2014-01-22T21:33:16+01:00</updated>
<published>2014-01-22T21:33:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66234#p66234</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66234#p66234"/>
<title type="html"><![CDATA[Re: Różnice między C a ASM]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5646&amp;p=66234#p66234"><![CDATA[
Tego się obawiałem, ok. Niby już kiedyś mi dr powiedział, że nie ma różnicy przy dzisiejszych procesorach, ale wolałem zapoznać się z szerszą opinią<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2504">Dregorio</a> — 22 sty 2014, o 21:33</p><hr />
]]></content>
</entry>
</feed>