este k tym zlozenym podmienkam

Martin Záruba swz na volny.cz
Pátek Duben 12 11:05:20 CEST 2024


1. Jak ale poznáte, že máte volat ZmenaZlozenejPodmienky?

2. Cortex-M3/4 neznám, ale pokud ten mechanismus urychlí vyhodnocení a 
je to důležité, pak má určitě přednost před přehledností.

Martin Záruba

Dne 12.4.2024 v 10:26 Jan Waclawek napsal(a):
> Vcera zhodou okolnosti som mal "prilezitost" sa na takych zlozenych
> podmienkach vyburit, a tak by som este rad doplnil dve navzajom pribuzne,
> relativne marginalne optimalizacne techniky, ktore pouzivam:
>
> 1. ak sa zlozena podmienka vypocitava casto ale meni zriedkavo, tak si ju
> "predpocitavam" do pomocnej premennej (sam pre seba to volam "cache", aj
> ked to nie je asi spravne z pohladu standardneho pouzitia toho slova).
> T.j. namiesto
> if (podmienka1 && podmienka2 && podmienka3) {}
> napisem
> if (zlozenaPodmienka) {}
> a vzdy ked sa meni podmienka1, podmienka2, podmienka3 tak zavolam
> void ZmenaZlozenejPodmienky(void) {
>    zlozenaPodmienka = podmienka1 && podmienka2 && podmienka3;
> }
>
> 2. ak podmienky su bitove stavy, tak ich s oblubou skladam do bytu/wordu,
> kde potom namiesto testu s && staci otestovat cely byte/word na nulu.
> Na toto sa da s vyhodou vyuzit bit-banding v Cortex-M3/4 (resp. bitova
> oblast v '51, bit-banding na rozhrani pamati v niektorych Kinetisoch,
> apod.)
>
> Obe tieto techniky maju pomerne zasadny nedostatok v tom, ze na prvy pohlad
> "nie je vidiet" pouzitie tych jednotlivych podmienok.
>
> wek
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20240412/a6f70502/attachment.htm>


Další informace o konferenci Hw-list