-
Data: 2012-05-02 21:11:39
Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
Od: Sebastian Biały <h...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 2012-05-02 14:52, Andrzej Ekiert wrote:
>> Ja rozumiem to jako podejście w stylu boost::mpl.
> Ładne. Ale szczerze mówiąc to nie bardzo widzę, jaki problem to
> rozwiązuje w przypadku programowania naszego 8-bitowca z 1kB kodu.
Powiedzmy - dopasowanie typu [char|short] licznika w czasie kompilacji.
Policzenie jaki typ nalezy wybrać dla zbioru flag. Policzenie stalej w
czasie kompilacji. Kompilacja warunkowa bez #define. Itd.
> Sprytne i fajnie pokazuje, jak działa destruktor. Ale ja bym po prostu
> napisał:
> cli();
> ... kod krytyczny
> sei();
teraz:
cli()
....
return
...
goto
...
break
...
sei();
I już po tobie. A po mnie nie.
> Lepiej widać w jednym miejscu co się dzieje, bez szukania definicji
> klasy CriticalSection, bez zastanawiania się gdzie jej obiekt wychodzi z
> zasięgu
Nie zastanawiasz sie. Na pewno wszystkie miejsca działają poprawnie. na
tym polega sztuczka. Możesz oderwać się od assemblera i skupić na
algorytmie. nadmierne przejmowanie się szczegółami uniemozliwia pisanie
czytelnego kodu.
>, no i bez ryzyka, że osoba, która nie jest autorem kodu nie
> zauważy, że wsród paru zmiennych lokalnych jest jakiś dziwny pozornie
> nieużywany obiekt.
Jesli "pozornie nieuzywan obiekt" nazywa się SekcjaKrytyczna i on tego
nie zauważy, to pozostawienie w tym miejscu makra, sei, cli nic nie
pomoże - przecież pozornie jest nieużywane. Trudno, nie mówimy tutaj o
programistach basica oddelegowanych do poprawiania C++.
> Ja tam wolę widzieć przebieg programu, a nie musieć ciągle pamiętać, że
> między ostatnią instrukcją funkcji, a '}' uruchomi się jeszcze seria
> niewidzialnych funkcji.
A więc dobrze podejrzewałem - jesteś assemblerowcem. Musisz wiedzieć co
sie dzieje bo nie ufasz kompilatorom. Ja natomiast odwrotnie. Znajduje
zdcecydowanie wiecej bugów we własnym kodzie niż w wygenerowanym przez
kompilator.
> Zresztą, akurat w mojej praktyce programowania
> małych uC potrzeba nietrywialnej destrukcji "obiektu" zachodzi bardzo
> rzadko.
Mam to za darmo. Używam. PICowcy mogą tylko obejśc się smakiem albo
ciągnąć tasiemcowe wywody dlaczego im to nie potrzebne.
>> Moje marzenie to PIC w sensie peryferiów i AVR w sensie rdzenia. Ale
>> sie nie doczekalem bo przyszły ARMy i pozamiatały.
> Architektura 16-bit Microchipa (PIC24, dsPIC33) to właśnie coś takiego.
Co takiego? Ślepą uliczkę sprzętowego stosu? Brak wsparcia poza żalosnym
kompilatorem producenta? Nawt MC sie puknął w czolo i zakopał to cudo
głęboko pod ziemią żeby już nie straszyło. Tylko że ARM jest już za tani
i za dobry.
> Bardzo elegancko zaprojektowana, przyjemnie się z tym pracuje - moim
> zdaniem dużo ładniejsza niż MIPS, którego użyli w PIC32, oraz niż ARM.
Dla mnie nie ma różnicy. Nie pisuje w assemblerze dla niepoznaki nazwanym C.
>> No chyba, że architektura PICów nie da się wmontować w backed gcc.
> gcc zostało przeniesione na architektury 16 i 32 bit. Jeśli chodzi o te
> 32 bit (rdzeń MIPS) to spodziewam się, że prędzej czy później kompilator
> C++ się pojawi.
Jasne. http://www.microchip.com/forums/m544964.aspx
> Do 16-bit też pewnie mogliby to w miarę tanio zrobić -
> mi zupełnie jednak na tym nie zależy.
Słusznie. Nie ma targetu.
Następne wpisy z tego wątku
- 02.05.12 22:32 Jerry1111
- 02.05.12 23:53 Sebastian Biały
- 03.05.12 01:05 Andrzej Ekiert
- 03.05.12 10:27 Sebastian Biały
- 03.05.12 11:12 Andrzej Ekiert
- 03.05.12 11:19 Sebastian Biały
- 03.05.12 11:50 Andrzej Ekiert
- 03.05.12 12:00 Sebastian Biały
- 03.05.12 15:32 mk
- 03.05.12 19:59 Sebastian Biały
- 03.05.12 22:39 Jerry1111
- 03.05.12 22:45 Jerry1111
- 03.05.12 23:32 Mario
- 03.05.12 23:34 Sebastian Biały
- 03.05.12 23:49 Sebastian Biały
Najnowsze wątki z tej grupy
- Szukam monitora HDMI ok. 4"
- Obcinaczki z łapaczem
- termostat do lodowki
- SEP 1 kV E
- Aku LiPo źródło dostaw - ktoś poleci ?
- starość nie radość
- Ataki hakerskie
- Akumulatorki Ni-MH AA i AAA Green Cell
- Dławik CM
- 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
Najnowsze wątki
- 2024-12-19 koniki obsiadły kolejki i numerki
- 2024-12-18 Poseł oszukany "na policjanta"
- 2024-12-18 znów chory psychicznie
- 2024-12-18 Katowice => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2024-12-18 Poznań => Dyspozytor Międzynarodowy <=
- 2024-12-18 Katowice => System Architect (background deweloperski w Java) <=
- 2024-12-18 Gdańsk => System Architect (Java background) <=
- 2024-12-18 Warszawa => Helpdesk Specialist <=
- 2024-12-18 Katowice => Kierownik Działu Zarządzania Platformą Wirtualizacji i
- 2024-12-18 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-18 Żerniki => Employer Branding Specialist <=
- 2024-12-18 Gliwice => Specjalista ds. public relations <=
- 2024-12-18 Kablówka z modułem CAM
- 2024-12-18 Warszawa => Spedytor międzynarodowy <=
- 2024-12-18 Wróblewo => Analityk finansowy <=