[teknik]
(3) 

c'de >>= ??

natnan #132723
bir kodda var bu.
p.x >>= 8;
şeklinde kullanılmış. ne bu?

googleda böyle şekiller nasıl aranır bilemiyorum. değer verip denedim hep 0 döndürdü.

 

sağa 8 bit shift etme işlemi.

(bkz: shift right)

yani p.x'in yeni değeri p.x'in 8 bit sağa kaydırılmış yeni hali oluyor. p.x de 8 bit'ten küçük bi yere sığabilecek bi değerse bütün değerler 0'a dönüşür ve p.x 0 olur. ki bi sayıyı 8 bit kaydırmak 2^8'e bölmek oluyor. onun için bunu göze alarak büyük bi değer verince 0 dönmemesi lazım.

tepedeki psychedelic adam

p.x = p.x >> 8;
>> 8 kere shift right demek. Yani bir anlamda 2^8e bolmek gibi.
araya telefon girdi diye 10 dakika gec kalmisim, olacak sey mi.

compumaster

mesela p.x 8 olsun.
p.x>>= 3; işlemi şöyle gerçekleşiyor;
önce 8 ikili sayı sistemine çevriliyor yani p.x=1000 oluyor.
sonra 3 bit sağa kaydırılıyor. yani p.x=0001 oluyor. tekrar onluk sisteme çevirince de p.x'in değeri 1 olmuş oluyor. bir anlamda 2^3 bölünmüş oluyor.

paddle steamer
1

mobil görünümden çık