-
Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.PO
STED!not-for-mail
From: Michoo <m...@v...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: książka o programowniu AVR w C
Date: Mon, 31 Jan 2011 15:30:22 +0100
Organization: http://onet.pl
Lines: 53
Message-ID: <ii6h1t$djb$1@news.onet.pl>
References: <ihpvpu$mvg$1@mx1.internetia.pl> <4...@i...pl>
<4d467cd6$1@news.home.net.pl> <ii61g5$af2$1@news.task.gda.pl>
<ii6612$1o6$1@news.onet.pl> <ii6fuk$3re$1@news.task.gda.pl>
NNTP-Posting-Host: smaug.int.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.onet.pl 1296484221 13931 83.238.197.12 (31 Jan 2011 14:30:21 GMT)
X-Complaints-To: n...@o...pl
NNTP-Posting-Date: Mon, 31 Jan 2011 14:30:21 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.16) Gecko/20101227
Icedove/3.0.11
In-Reply-To: <ii6fuk$3re$1@news.task.gda.pl>
Xref: news-archive.icm.edu.pl pl.misc.elektronika:603896
[ ukryj nagłówki ]W dniu 31.01.2011 15:11, Marcin Wasilewski pisze:
> Użytkownik "Michoo" <m...@v...pl> napisał w wiadomości
> news:ii6612$1o6$1@news.onet.pl...
>> W dniu 31.01.2011 11:05, Marcin Wasilewski pisze:
>>> Ale zgodze się, że
>>> pierwszy projekt dobrze jest napisać w assemblerze, bo wtedy ma się
>>> pojęcie o rzeczach, o których dłubacz kodu w C, nigdy nie będzie miał
>>> pojęcia.
>> Jak na przykład?
>
> Np. tak:
>
> a) co jest zrzucane na stos i dlaczego w takiej kolejności,
Jakie to ma znaczenie w kodzie C?
> b) że są rejestry w obszarze I/O i w ext. I/O, a w związku z tym sporo
> inaczej je się obsługuje, w szczególności jeśli chodzi o operacje bitowe.
Jakie to ma znaczenie w kodzie C, poza informacją, że porty mają
możliwość ustawiania/gaszenia atomowo jednego bitu? (Co jest w
dokumentacji.)
> c) że czasami po zapisie do rejestru warto wstawić nop, zanim zaczniemy
> go czytać.
O co powinien zadbać kompilator. Tak samo jak o uporządkowany zapis do
rejestrów 16b.
> d) że pewne instrukcje działają wyłącznie na dedykowanych rejestrach,
Jakie to ma znaczenie w kodzie C?
> e) że wartość z rejestru PC to tak naprawdę liczba słów i trzeba ją
> pomnożyć x2, jeśli chcemy tej wartości użyć poprzez lpm,
Jakie to ma znaczenie w kodzie C? Poza tym to jest w dokumentacji.
> f) że używając w C zmiennej typu char do wymiany danych z proc. obsługi
> przerwań, nie trzeba się tym przejmować, w odróżnieniu od int-ów i
> jeszcze dłuższych zmiennych,
Chyba, że się operuje na bitach... Poza tym jest to okropny styl pisania
- komunikację z przerwaniami zawsze lepiej objąć w ATOMIC, bo inaczej
łatwo o prosty błąd przy późniejszych przeróbkach kodu. (A koszt
zazwyczaj pomijalny - 2 cykle +1 cykl opóźnienia.)
> g) że znacznie lepiej mnożyć/dzielić przez 2, 4, 8 itd., niż przez 10.
Dlaczego? Jeżeli procesor ma układ sprzętowego mnożenia to jest to jeden
cykl różnicy. Dzielenie przez stałą sensowny kompilator zamienia na
mnożenie.
>
> I wiele, wiele innych rzeczy o których w tej chwili nie pamiętam.
I wiele, wiele innych rzeczy o których programista C _nie musi_ pamiętać.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 31.01.11 15:38 J.F.
- 31.01.11 16:22 identifikator: 20040501
- 31.01.11 17:00 Michoo
- 31.01.11 17:27 J.F.
- 31.01.11 19:39 Marcin Wasilewski
- 31.01.11 20:04 Sebastian Biały
- 31.01.11 20:13 kk
- 31.01.11 20:54 Sebastian Biały
- 31.01.11 21:20 kk
- 31.01.11 21:27 JDX
- 31.01.11 21:34 Marcin Wasilewski
- 31.01.11 21:40 JDX
- 31.01.11 23:17 RoMan Mandziejewicz
- 01.02.11 07:21 ohouapss
- 01.02.11 07:35 4CX250
Najnowsze wątki z tej grupy
- JDG i utylizacja sprzetu
- Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
- Pytanie o transformator do dzwonka
Najnowsze wątki
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO
- 2024-11-28 droga laweta
- 2024-11-28 Co tam się odpierdala w tej Warszawie?
- 2024-11-28 skąd się biorą tacy debile?
- 2024-11-28 JDG i utylizacja sprzetu
- 2024-11-27 Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- 2024-11-28 Katowice => Technical Artist <=
- 2024-11-28 Katowice => Technical Artist <=
- 2024-11-28 Bydgoszcz => QA Engineer <=