-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!opal.futuro.pl!news.internetia.pl!not-f
or-mail
From: "Andrzej Ekiert" <d...@t...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
Date: Wed, 02 May 2012 14:52:02 +0200
Organization: Netia S.A.
Lines: 119
Message-ID: <o...@j...jedi>
References: <4f9d25af$1$1209$65785112@news.neostrada.pl>
<jnk77t$895$1@mx1.internetia.pl> <jnk8f0$r2r$1@node2.news.atman.pl>
<jnk9gt$64k$1@news.dialog.net.pl> <jnkd05$vuu$1@node2.news.atman.pl>
<jnkghf$9m$1@mx1.internetia.pl> <jnkhcv$9v6$1@news.dialog.net.pl>
<jnldta$e37$1@mx1.internetia.pl> <o...@j...jedi>
<jnmqll$dqi$2@inews.gazeta.pl> <o...@j...jedi>
<jnmvba$pbl$1@inews.gazeta.pl> <o...@j...jedi>
<jnn0o5$ssr$1@inews.gazeta.pl> <o...@j...jedi>
<jnn2ld$3ti$1@inews.gazeta.pl> <o...@j...jedi>
<jnomqu$stm$1@inews.gazeta.pl> <o...@j...jedi>
<jnprj1$oao$1@inews.gazeta.pl>
NNTP-Posting-Host: ip-91-192-3-72.techmedia.com.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes
Content-Transfer-Encoding: Quoted-Printable
X-Trace: mx1.internetia.pl 1335963231 17034 91.192.3.72 (2 May 2012 12:53:51 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Wed, 2 May 2012 12:53:51 +0000 (UTC)
To: Sebastian Biały <h...@p...onet.pl>
X-Tech-Contact: u...@i...pl
User-Agent: Opera Mail/10.10 (MacIntel)
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:630512
[ ukryj nagłówki ]Dnia 02-05-2012 o 01:28:30 Sebastian Biały <h...@p...onet.pl>
napisał(a):
> 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.
> Destruktory to cecha która nie wymaga podejścia obiektowego do
> programowania. Najprościej:
>
> struct CriticalSection {
> CriticalSection{ cli(); }
> ~CriticalSection{ sei(); }
> };
Sprytne i fajnie pokazuje, jak działa destruktor. Ale ja bym po prostu
napisał:
cli();
... kod krytyczny
sei();
Lepiej widać w jednym miejscu co się dzieje, bez szukania definicji klasy
CriticalSection, bez zastanawiania się gdzie jej obiekt wychodzi z
zasięgu, 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.
> Odwrotnie: dzieki swojemu samoczynnemu dzialaniu *ochraniają* przed
> wieloma subtelnymi bugami w stylu "a mi się tu zapomniało zdjąć flagę
> przerwania".
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. Zresztą, akurat w mojej praktyce programowania
małych uC potrzeba nietrywialnej destrukcji "obiektu" zachodzi bardzo
rzadko.
>> podając to jako coś ponadmarginalnie przydatnego przy programowaniu
>> mikrokontrolerów 8-bit.
>
> Mi się przydaje. Przyznaje, idę pod prąd.
Skoro ci się przydaje i masz nawyk ciągłego stosowania takich konstrukcji,
to rozumiem że koniecznie chcesz mieć C++.
> 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.
Bardzo elegancko zaprojektowana, przyjemnie się z tym pracuje - moim
zdaniem dużo ładniejsza niż MIPS, którego użyli w PIC32, oraz niż ARM.
> Nie zmuszajmy MC żeby pisał kompilator Ady dla 0.01% programistow uC.
> Ale C++ mógłby. Wystarczylo sportować gcc.
Nie zmusimy ich do niczego, bo tam kalkulacja jest prosta: zrobienie
kompilatora kosztuje tyle, a zyskamy na tym tyle. Jeśli nierówność zaczyna
wychodzić zdecydowanie na korzyść, to robią.
> 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. Do 16-bit też pewnie mogliby to w miarę tanio zrobić - mi
zupełnie jednak na tym nie zależy.
ae
Następne wpisy z tego wątku
- 02.05.12 21:11 Sebastian Biały
- 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
Najnowsze wątki z tej grupy
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
Najnowsze wątki
- 2025-03-07 AION przejety
- 2025-03-07 Warszawa => Data Engineer (Tech Leader) <=
- 2025-03-07 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-03-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-03-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-03-07 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-07 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-07 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-03-07 Warszawa => International Freight Forwarder <=
- 2025-03-07 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-03-07 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-07 Piaseczno => Developer .NET <=
- 2025-03-07 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-03-07 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=