Operator Bitwise Pada Java

Operator Bitwise

Operator bitwise digunakan untuk memanipulasi bit-bit dari nilai data yang ada di memori. Operator bitwise dalam bahasa Java :

Operator Penjelasan Contoh Hasil
>> Pergeseran bit ke kanan 12 >> 2 3
<< Pergeseran bit ke kiri 7 << 2 28
& Manipulasi bit dengan logika AND 11 & 7 3
| Manipulasi bit dengan logika OR 9 | 3 11
^ Manipulasi bit dengan logika XOR 8 ^ 6 14
~ Manipulasi bit dengan logika NOT ~13 -14

Penjelasan

Setiap numerik yang dimanipulasi harus dirubah dulu kedalam bentu biner, pada contoh di atas maka binernya ada sebagai berikut:

Desimal Biner
3 11
6 110
7 111
8 1000
9 1001
10 1010
11 1011
12 1100

Setelah didapatkan biner dari sertiap numerik yang akan dimanipulasi maka barulah dilakukan operasi bitwise sesuai dengan operator yang di gunakan. Penjelasan dapat dilihat pada tabel berikut ini :

Penggunaan Penjelasan Hasil Biner Hasil Desimal
12>>2 1100 digeser 2 bit ke kanan 11 3
7<<2 111 digeser 2 bit ke kiri 11100 28
12 & 7 1100 & 0111 maka setiap bit dibandingkan dengan logika AND 0100 8
9 | 3 0101 | 0011 maka setiap bit dibandingkan dengan logika OR 0111 11
8 ^ 6 0100 ^ 0110 maka setiap bit dibandingkan dengan logika XOR 0010 2
~13 ~(1101) -14

Pada operator ~ (Not) ada perhitungan tersendiri, secara sederhana rumusnya sebagai berikut :

  • ~(n) = – (n+1), contoh: ~(82) = -83
  • ~(-n) = n-1, contoh: ~(-43) = 42

Contoh Program :

public class OperatorBitwise {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println(" 7 << 2 =  "+ (7 << 2));
        System.out.println(" 12 >> 2 =  "+ (15 >> 2));
        System.out.println(" 12 & 7 =  "+ (12 & 7));
        System.out.println(" 9 | 3 =  "+ (9 | 3));
        System.out.println(" 8 ^ 6 =  "+ (8 ^ 6));
        System.out.println(" ~13 =  "+ (~13));
        System.out.println(" ~(-8) =  "+ ~(-8));
    }
}

Silahkan eksplorasi lebih lanjut ke Kondisi Pada Java

1 Trackbacks & Pingbacks

  1. Belajar Operator Bitwise Pada Java | Borneojava's Weblog

Leave a Reply

Your email address will not be published.


*


Block AdBlock - Powered by Admiral