eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika[Zlecę] wykonanie interface'u Ethernetowego do architektury Z80Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
    From: Sebastian Biały <h...@p...onet.pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Date: Wed, 02 May 2012 21:11:39 +0200
    Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
    Lines: 88
    Message-ID: <jns0td$3e0$1@inews.gazeta.pl>
    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> <o...@j...jedi>
    NNTP-Posting-Host: 83.142.222.167
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: inews.gazeta.pl 1335985901 3520 83.142.222.167 (2 May 2012 19:11:41 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Wed, 2 May 2012 19:11:41 +0000 (UTC)
    X-User: sebo.bialy
    In-Reply-To: <o...@j...jedi>
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.16)
    Gecko/20101125 Thunderbird/3.0.11
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:630525
    [ ukryj 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.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: