PHP bitsel operasyonların gerçek dünya örnekleri arıyor

3 Cevap php

Ben kritik alanlarda şeyleri hızlandırmak için bir yol olarak bit operasyonlar bakarak oldum. Ama bulmak ne çoğu sadece düşük düzeyde açıklamalar vardır.

Herkes çok nazik kısaca kendimi bit işlemleri gerek bulabilirsiniz uygulamalı hangi durumlarda açıklamak gibi olurdu? Ya da belki de iyi bir öğretici bir bağlantı?

Teşekkürler!

3 Cevap

Bu, bu soruya benim cevap,

http://stackoverflow.com/questions/1251854/php-ip-to-network-translation

Bu pasajı gerçek üretim kodu olduğunu. It has bitsel ve ve bit vites. Ben bu bit operasyonlar olmadan yapmak oldukça zor olduğunu düşünüyorum.

<?php

function to_netmask($ip, $prefix) {
    $mask = $prefix==0?0:0xffffffff << (32 - $prefix);
    return long2ip(ip2long($ip) & $mask);
}

?>

Ben PHP performans artışı alırsınız şüpheliyim. Bu (doğru / yanlış) ayarlarını saklamak zaman daha az yer kaplıyor çünkü onları kullanmak iyi bir uygulamadır.

Sol veya sağ değişen zaman C / C + +, bir hız artışı elde etmek için bunları kullanabilirsiniz ..

ie: x << 1 // equal x=x*2 x << 2 // equal x=x*4 x << 3 // equal x=x*8

  x >> 1   // equal  x=x/2

ikili değişen bir bölünme ya da çarpma yaparak daha hızlı olduğu için, genellikle bunun için kullanmak oldu. Ihtar yalnızca işaretsiz tamsayı (hayır float) ile çalışıyor olmasıdır

derleyiciler gerçekten daha agresif ilgili optimizasyonlar beri hız iyileştirilmesi için değişen kullanarak bit artık tavsiye edilmez. Eklerseniz kod derleyici iyi yöntemi seçecektir ipuçları.

Bitsel operatörleri gerçekten pratik. Iyi bir örnek ilk yanıt gösterilir