Operator Bitwise di PHP
Operator bitwise (Bitwise Operators) adalah operator khusus yang disediakan PHP untuk menangani proses logika untuk bilangan biner. Cara kerja dari Operator bitwise sama seperti operator logika, tapi operasinya dilakukan bit-demi-bit (bit=binary digit). Dalam operasi ini, bilangan bulat yang dijadikan operand akan dikonversi ke bentuk biner terlebih dahulu. Selanjutnya, operator logikanya dilakukan antar bit. Tabel berikut menunjukkan daftar operator bitwise di PHP.
Dalam penerapannya sendiri memang penulis hampir tidak pernah menggunakannya. Karena memang dalam penggunaan operator bitwise ini hanya ketika kita sedang membuat program yang langsung berkaitan dengan pemrosesan bilangan biner.
Operator | Keterangan |
---|---|
& |
Bitwise AND (1 jika kedua bit bernilai 1) |
| |
Bitwise OR (1 jika salah satu bit bernilai 1) |
^ |
Bitwise XOR (1 jika salah satu bit bernilai 1, tapi bukan keduanya) |
~ |
Bitwise NOT (bit 0 menjadi 1 dan bit 1 menjadi 0 |
<< |
Bitwiser Shift Left (menggeser n bit kea rah kiri) |
>> |
Sift right (menggeser n bit kea rah kanan) |
Konsep logika dari operator &, ! dan ~ sama seperti operator &&,|| dan ! yang terdapat pada operator logika. Perbedaanya, operator &, | dan ~ beroperasi untuk masing-masing bit.
Operator ^ (XOR) hanya menghasilkan nilai true jika salah satu operand (bukan keduanya) bernilai true. Selain kondisi tersebut maka nilai yang dihasilkan adalah false.
Operator << akan>dikali 2.
Operator > akan menggeser n bit kea rah kanan dari bilangan yang sudah dikoenversi ke bentuk biner. Setiap pergeseran 1 bit ke arah kanan akan menghasilkan operand dibagi 2.
Berikut contoh kode yang menunjukkan penggunaan operator bitwise di PHP.
<?php
#
# Operator Bitwise by SmartDevTala
#
$a = 180;
$b = 160;
#menampilkan nilai a dan b
echo "\$a :".$a."\n";
echo "\$b :".$b."\n\n";
echo "Bitwise AND\n";
echo ($a & $b)."\n\n";
echo "Bitwise OR\n";
echo ($a | $b)."\n\n";
echo "Bitwise XOR\n";
echo ($a ^ $b)."\n\n";
echo "Bitwise NOT\n";
echo (~$a)."\n";
echo (~$b)."\n\n";
echo "Bitwise SHIFT LEFT\n";
echo ($a << 1>> 1)."\n";
echo ($b >> 1)."\n\n";
?>
Hasil program :
Konsep operasi bitwise AND di atas adalah sebagai berikut :
10110100 180 dalam bentuk biner
10100000 160 dalam bentuk biner
--------------&
10100000 hasil = 160
Konsep operasi bitwise OR:
10110100 180 dalam bentuk biner
10100000 160 dalam bentuk biner
--------------|
10110100 hasil = 180
Konsep operasi bitwise XOR:
10110100 180 dalam bentuk biner
10100000 160 dalam bentuk biner
--------------|
00010100 hasil = 20
Untuk operasi bitwise SHIFT LEFT dan SHIFT RIGHT terjadi pergeseran bit ke kiri atau ke kanan sejumlah nilai yang di definisikan.
Operasi Bitwise SHIFT LEFT
10110100 180 dalam bentuk biner
--------------<
101101000 hasil = 360
10100000 160 dalam bentuk biner
--------------<
101000000 hasil = 320
Operasi Bitwise SHIFT RIGHT
10110100 180 dalam bentuk biner
--------------<
01011010 hasil = 90
10100000 160 dalam bentuk biner
--------------<
01010000 hasil = 80
Bagaimana? Apakah dapat dimengerti?, semoga saja ya, memang seperti yang telah penulis sampaikan di atas, penggunaan operator bitwise ini hampir tidak pernah penulis gunakan. Jadi cukup tau saja juga tidak masalah. Demikian artikel kali ini semoga bermanfaat.
Nasrullah Siddik (Administrator)
Pada akhirnya kualitas dapat mengalahkan kuantitas
Artikel Sejenis
-
Parameter Fungsi di PHP
04 Juni 2020 -
Cara Mendefinisikan Fungsi di PHP
08 Mei 2020 -
Pengertian Fungsi (Function) di PHP
14 April 2020