[ OTAC_XXL @ 20.02.2007. 08:58 ] @
Pozdrav, Ako bi neko imao vremena da mi objasni ili da me uputi na neki dobar tutorial koji objasnjavaju operatore tipa >>, <<, =>>, <<= itd ili u primjeru ( cmd <<= 1, 0x1<<5) Unaprijed hvala !!! |
[ OTAC_XXL @ 20.02.2007. 08:58 ] @
[ X Files @ 20.02.2007. 12:56 ] @
Citat: Ako bi neko imao vremena da mi objasni ili da me uputi na neki dobar tutorial koji objasnjavaju operatore tipa >>, <<, =>>, <<= itd Radi se o pomeranju bitova (engl. shift-ovanje) neke vrednosti ULEVO ili UDESNO, čime se na primer može postići isti efekat kao i množenje ili deljenje sa osnovom dva (pod uslovom da se tim pomeranjem ne izgube neki bitovi). Npr: Ovo je neka celobrojna promenljiva x kojoj je dodeljena vrednost 12 (dekadno), što je isto što i 1100 binarno. int x = 12; Iskazom: x = x >> 1; ... vrši se pomeranje BITOVA za JEDNO mesto UDESNO (1100 -> 0110, dakle, nova vrednost je 6 (dekadno) ) Ako nastavimo: x = x >> 1; ... vrši se opet pomeranje BITOVA za JEDNO mesto UDESNO (0110 -> 0011, dakle, nova vrednost je 3 (dekadno) ) Dalje: x = x >> 1; ... vrši se novo pomeranje BITOVA za JEDNO mesto UDESNO (0011 -> 0001 = 1 (dekadno) ), ali izgubio si jedan bit, nepovratno Konačno: x = x >> 1; ... pomeranjem BITOVA za JEDNO mesto UDESNO izgubio si sve bitove (0001 -> 0000 = 0 (dekadno) ). Naravno, nije obaveza da se pomeranje vrši samo za jedan bit x = x >> 1; već može odmah i za više x = x >> y;, u ovom slučaju 'y' bitova. Svi primeri gore su se odnosili na pomeranje bitova udesno >> Svakako da može i ulevo <<, čime se postiže efekat množenja sa osnovom dva. Iskaz: x = x >> 1; je identičan sa iskazom x >>= 1;. [Ovu poruku je menjao X Files dana 20.02.2007. u 21:52 GMT+1] [ OTAC_XXL @ 20.02.2007. 14:23 ] @
Hvala puno na odgovoru i na utrosenom vremenu.
[ lucky @ 20.02.2007. 19:50 ] @
Citat: Ovo je neka celobrojna promenljiva x kojoj je dodeljena vrednost 12 (dekadno), što je isto što i 1100 heksadekadno. Samo sto je 1100 binarni zapis broja 12. (Siguran sam da je u brzini napisano, ali posto je forum za pocetnike da ne bi doslo do zabune) [ X Files @ 20.02.2007. 20:51 ] @
Hvala na ispravci, evo popravicu i gore ;)
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|