http://ddili.org/ders/d/bit_islemleri.html
Ali
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]
Thread overview | |||||
---|---|---|---|---|---|
|
April 06, 2010 Yeni ders: Bit İşlemleri | ||||
---|---|---|---|---|
| ||||
http://ddili.org/ders/d/bit_islemleri.html Ali -- |
April 07, 2010 Yeni ders: Bit İşlemleri | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | D'de bit alanlarının (bitfields) bulunmadığını hatırladım. :) Eğer olsaydı, bu dersten sonra doğal olarak sıra ona gelecekti. Bit alanları kütüphane olanağı olarak çözülmüş: http://digitalmars.com/d/2.0/phobos/std_bitmanip.html Bit işlemlerinin sağladığı maskeleme yöntemi ile gerçekleştiriyorlar. O sayfadan kopya bir örnek:
Çıktısı (bit alanlarını belli etmek için aralarına elle '-' yerleştirdim; üçüncü-ikinci-birinci şeklinde duruyorlar):
Henüz birlikleri (union) ve katmaları (mixin) anlatmadığım için derse eklemeyeceğim ama görüldüğü gibi kullanımları çok basit. Sonuçta, aynı uint içinde üç bit alanı oluşturuluyor. İlk ikisi 8'er bitlik, üçüncüsü 16 bitlik. Ali Not: bitfield'ler C'de ve C++'da sorunludur ve taşınabilen olanaklar değildir. Alanların ne sıraları, ne aralarına gelebilecek doldurma bitleri, ne de başka bir şey bilinebilir. :) O yüzden zamanında bir C++ çözümü bulmaya çalışmıştım: http://acehreli.org/turkcecpp/programlar/bitfield/ O şablonu yazdığım proje sonuçlanmadığı için ne kadar kullanışlı olduğunu da bilemem. :) -- |
May 05, 2010 Yeni ders: Bit İşlemleri | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | Yaşlanıyorum! :) Bu mesajın hemen hemen aynısı yazdım ve neredeyse gönderecektim. Ama göndermeden önce aramaya karar verdim ve yukarıdaki mesajı buldum... :) Ali -- |