algoritmus kerdes

Skandar Graun sgraun at gmail.com
Thu Sep 27 07:26:04 CEST 2007


Ez egy kissé nekem el van bonyolítva.
Az alap feltevés az, hogy sorban, egymás után.
Egyszerűbb három számláló. Egy, ami a kiemelendő biteket számolja,
egy, ami az aktuális byte-okat a tömbben és egy ami a byte-on belüli
bitet. Innentől már csak egy indexelt cím a tömbre és megvan. Mivel
sorban megy, nem kell állandóan új címet számolni, hanem újratöltöd a
számlálót.

Moczik Gabor <pm_levlista at progzmaster.hu> írta, 2007.09.27.:
> vajk fekete wrote:
> > tehat ha pl 13 bites, akkor az elso az 0. biten kezdodik, a masodik az a masodik byte 5. biten, stb.
> [...]
> > Tehat elore lehet csinalni egy nyolcsoros tablazatot, ami a maszkot, eltolast es a byteleptetest tartalmazza.
>
> Nem biztos hogy szamottevoen gyorsit.
> Fel kell tolteni a cache tablat, kell egy MODULO 8, ami mondjuk bitenkenti
> AND 7.
>
> > A 13 bites peldanal maradva: 13 div 8 felkerekitve: 2 byte egy slice.
>
> Vagy 2 vagy 3, attol fuggon hogy hol kezdodik.
> Ha ugyanis pl. a 7-ik biten, akkor az 1 byte 7. bitje, a 2. byte 0..7 bitje,
> a 3 byte 0..3 bitje kell.
>
> > Az algoritmus:
> > van egy pointer, ami a tombben azt mutatja honnan kell venni a kov sliceot. Ez csak byte pontos. Kezdetben 0.
> > van egy masik, ami a 8soros tablazaton jar korbe.
> >
> > veszek a pointertol kezdve 3 db byteot.
>
> Ez 18 bitestol felfele mar hibazik. 4 byte-ot kell felolvasni es 4 byteos
> puffer kell, azert amit feljebb irtam.
>
> --
> ((( Móczik Gábor  )))--((( pm -> @ -> progzmaster -> . -> hu  )))
> ((( Skype: moczik )))
>
> -----------------------------------------
>          elektro[-flame|-etc]
>


More information about the Elektro mailing list