Şimdi Ara

Bitwise Operator matematiksel açıklamaları

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
2
Cevap
0
Favori
794
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • ~, ^ , | , & , << , >> gibi operatorlerin matematiksel açıklamaları mevcut mudur ? Yani atıyorum x>>y , x çarpı y bölü bilmemne türü bir açıklamaları varsa yazarsanız sevinirim..



  • Adı üstünde bunların bitwise, bitsel operatörler, bilindiği gibi bilgisayarlar bizim konuşma dilimizden farklı bir dil kullanırlar ( bildiniz binary! ), bitwise operatörler bir değişkene, bir array e, bir tipe, bir methoda uygulanabilirler. Gelelim açıklamalarına:

    ~ ( Bitwise NOT ) yani Değil operatörü bitler üzerinde değil alır. Örneklemek gerekirse elimizde:
    0xFA diye bir hex sayımız olsun bunun binary değeri 1111 1010 dir eğer biz 0xFA değerine Bitwise Not operatörü ile işlem uygularsak elde ediceğimiz sayı

    0000 0101 olacaktır ki buda bize 0x05 hex i verir. Yani:

    0xFA ( 1111 1010 ) = 250
    ~0xFA ( 0000 0101 ) = 5

    | ( Bitwise OR ) Bitsel toplama operatörüdür, tekrar 0xFA sayısını ele alalım:

    0xFA ( 1111 1010 ) = 250
    0xFA |= 0x05
    yukarıdaki işlem size:

    1111 1010
    0000 0101
    +___________
    1111 1111

    sonucunu verir yani elde ettiğiniz sayı: 0xFF olur.

    ^ ( Bitwise XOR ) Genelde bizde "Özel Veya" diye öğretilir. Farklı bitlerin ortaya çıkmasını sağlar:

    1111 1010 ^ 0000 0111 = 1111 1101

    Şeklinde bir işlem çıktısı verir. Yani farklı olan bitlerin değeri 1 aynı olanlarınki 0 olarak çıkar.

    & ( Bitwise AND ) Çarpım operatörüdür.

    1111 1110
    0000 0101
    X___________
    0000 0100

    Olarak çıktı verir.

    << ( Bitwise Shift Left) Bit kaydırma operatörüdür verilen sayının bitlerini sola doğru verilen değer kadar kaydırır.

    1111 1110 << 1 = 1111 1100

    >> ( Bitwise Shift Right ) Bit kaydırma operatörüdür verilen sayının bitlerini sağa doğru verilen değer kadar kaydırır.

    1111 1110 >> 1 = 0111 1111

    Önemli Not: Carry Flag, Zero Flag v.b Terimsel Açıklamalara Değinmedin, çok bilmiş arkadaşlar çıkıpda shift de şöyle olursa böyle olur böyle olmazsa böyle olur yanlış biliyosun haha diye bir tavır takınmak yerine, onlarda onu yazarsa daha iyi olur.

    Kolay gelsin.




  • Yapay Zeka’dan İlgili Konular
    Operator ve operand sayımı
    3 yıl önce açıldı
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.