Re: C, bitmezők, mutató

Andras Tantos andras at tantosonline.com
Wed Aug 1 21:15:40 CEST 2007


Hali!

Szoval az egeszet azert csinalod, hogy gyors legyen? Ez erdekes, es persze 
nagyon fugg attol, hogy milyen procit hasznalsz, de szerintem a sima tomb 
gyorsabb megoldast kell hogy eredmenyezzen. Meg ha fel is tesszul, hogy a 
nyelv tamogatja a bitmezo-pointereket (nem), akkor is, mit gondolsz, milyen 
kodot fog a fordito generalni hozza? Kb. ugyanazt, amit te is irtal. A 
bitmezok irasanal nem tudod elkerulni a read-modify-write szemantikat, plusz 
persze a bit-muveleteket, ugyhogy ha nem regiszterben tarolod, akkor 
mindenkeppen lassabb lesz, mint a szimpla tomb megoldas. Persze, ha csak 
32-bitre van szukseged, akkor van ra eselyed, hogy a fordito regiszterbe 
rakja az egesz strukturat, es igy lehet, hogy gyorsabb. De meg egyszer, a 
gondolat-menet elmeleti: nincs bitmezo-mutato a nyelvben.

En amugy azt gondoltam, hogy a hellyel akarsz sporolni.

Udv,
Tantos Andras

----- Original Message ----- 
From: "Sztrikó János" <elektrolista at gradev.hu>
To: <elektro at tesla.hu>
Sent: Wednesday, August 01, 2007 7:17 AM
Subject: Re: C, bitmezők, mutató


Nya'ri Viktor wrote:
> Maszkolással?
>
> Ha n. bitre vagy kiváncsi
>
> temp = 1<<n;
> bit=0;
> if (temp & var) {bit=1;}
>
> Vagy valami ilyesmi...
Erre már én is gondoltam, de attól félek, hogy így lassú lenne. Éppen
azért szerettem volna bitmezővel csinálni, mert akkor bele tudtam volna
suvasztani ezt az egészet egy 32 bites regiszterbe, és akkor a memória
írás-olvasás is elmaradhatott volna.
Lehet, hogy túllihegem ezt a sebesség-dolgot, de törekszem arra, hogy a
lehető leggyorsabb legyen az egész (PLC értelmező). Este próbálok
tesztelni egy kicsit, majd megírom az eredményeket.

-----------------------------------------
          elektro[-flame|-etc]





More information about the Elektro mailing list