Operator bitwise bekerja berdasarkan bit dari suatu bilangan. Sebelum dilakukan operasi bitwise input (yang biasanya berupa bilangan desimal) harus diubah ke bentuk biner terlebih dahulu. Kemudian hasil output yang juga dalam bentuk biner, sebelum ditampilkan akan diubah ke bentuk desimal terlebih dahulu. Sehingga meskipun operasi berjalan dalam bentuk bit, kita tidak akan melihatnya, hanya bisa melihat hasilnya.
Untuk memahami cara kerja operator bitwise, berikut ini adalah salah satu contoh kasusnya. Kita memiliki dua variable, a dan b:
a = 5
b = 9
Sebelum dilakukan operasi bitwise, maka nilai masing-masing variable akan diubah ke bentuk biner, sehingga menjadi:a = 5 desimal = 0000 0101 biner
b = 9 desimal = 0000 1001 biner
Berdasarkan kedua variable di atas, berikut ini adalah operator bitwise yang ada di bahasa Python:
Operator | Deskripsi | Contoh |
---|---|---|
& | Melakukan operasi logika AND pada setiap bit, sesuai dengan urutan bit yang sama di kedua nilai. | a = 0000 0101 = 5 b = 0000 1001 = 9 a & b = 0000 0001 = 1 |
| | Melakukan operasi logika OR pada setiap bit, sesuai dengan urutan bit yang sama di kedua nilai. | a = 0000 0101 = 5 b = 0000 1001 = 9 a & b = 0000 1101 = 13 |
^ | Melakukan operasi logika XOR pada setiap bit, sesuai dengan urutan bit yang sama di kedua nilai. | a = 0000 0101 = 5 b = 0000 1001 = 9 a & b = 0000 1100 = 12 |
~ | Melakukan operasi logika NOT pada setiap bit, sesuai dengan urutan bit pada nilai variable. | a = 0000 0101 = 5 ~a = 1111 1010 = -6 b = 0000 1001 = 9 ~b = 0000 1101 = -10 |
<< | Operator pergerseran bit ke kiri, menggeser bit-bit dari variable di sebelah kiri, dengan jumlah pergeseran sesuai dengan nilai di sebelah kanan. | a = 0000 0101 = 5 a << 2 = 0001 0100 = 20 b = 0000 1001 = 9 b << 2 = 0010 0100 = 36 |
>> | Operator pergerseran bit ke kanan, menggeser bit-bit dari variable di sebelah kiri, dengan jumlah pergeseran sesuai dengan nilai di sebelah kanan. | a = 0000 0101 = 5 a >> 2 = 0000 0001 = 1 b = 0000 1001 = 9 b >> 2 = 0000 0010 = 2 |
Tweet
Tidak ada komentar:
Posting Komentar