eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaOdczyt z rejestru w CRe: Odczyt z rejestru w C
  • Data: 2009-02-11 15:43:12
    Temat: Re: Odczyt z rejestru w C
    Od: "T.M.F." <t...@n...mp.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    > Jeżeli rejestr jest volatile (powinien być) to kilka razy. Jeżeli nie jest,
    > to nie jest określone (zależy od optymalizacji) i nie można niczego założyć.
    >
    >> Jak to będzie w przypadku instrukcji switch ?
    >
    > Zawsze tylko raz.

    Tez nie bylbym taki pewien. Wszystko zalezy jak to potraktuje
    optymalizator i jak masz zapisane sekcje, np.:
    switch (rej) {
    case 1 : costam; break;
    case 2 : costam;
    case 3 : costam;
    };

    Po pierwszej sekcji nastepuje koniec sprawdzania, natomiast przy 2 po
    jej zakonczeniu przechodzi do warunku nr 3, co moze wiazac sie z
    ponownym odczytem zmiennej rej. Dodatkowo kompilator jesli jest wiecej
    case moze zrobic z tego jump table, zamiast sekwencji porownan.
    Zeby miec pewnosc w przypadku zmiennych, ktorych wartosc moze sie
    zmieniac pomiedzy porownaniami obowiazkowo trzeba je definiowac jako
    volatile, inaczej to co zrobi kompilator zalezy od optymalizacji i zadne
    zalozenia nie sa gwarantowane.

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: