Page 41 - Pemrograman Dasar (KD 3.3 - 3.7)
P. 41

03                           Operator Bitwise

















                                Operator bitwise hampir sama dengan logika, namun perbedaan
                         antara operator keduanya adalah bahwa operator bitwise bekerja pada bit
                         dan  melakukan  operasi  sedikit  demi  sedikit  sementara  operator  logis
                         digunakan untuk membuat keputusan berdasarkan berbagai kondisi.
                                Operator bitwise digunakan  untuk memanipulasi  data dalam
                         bentuk  bit  yang  mewakili  nilai-nilai  yang  mereka  simpan.  Dalam
                         pengelompokannya operator bitwise merupakan salah satu dari 4 jenis
                         operator  binary. Operator ini  hanya  dapat  digunakan  pada  operand
                         bertipe data char atau int karena berkorespondensi dengan tipe byte atau
                         word di dalam bit.

                             Operator                     Jenis Operasi                   Contoh

                                  |         Bitwise OR                                    1 | 0 = 1
                                 &          Bitwise AND                                   1 & 0 = 0
                                  ^         Bitwise XOR                                   1 ^ 1 = 0
                                 ~          NOT                                            ~ 1 = 0
                                 >>         Pergeseran bit ke kanan (Shift Right)        16 >> 2 = 4
                                 <<         Pergeseran bit ke kanan (Shift Left)          1 << 2 = 4

                         Contoh program:

                          #include <iostream>
                          using namespace std;
                          int main()
                          {
                              int a=20, b=15;

                              cout << a << " << 2 = " << (a<<2) << endl;
                              // shift right
                              cout << a << " >> 2 = " << (a>>2) << endl;
                              // shift left
                              cout << a << " ^ 15 = " << (a^b) << endl;
                              // XOR
                              cout << " ~" << a << "    = "<< (~a) << endl;
                              // NOT

                              return 0;
                          }
                         Hasil:











                        Operasi Aritmatika dan Logika                                                36
   36   37   38   39   40   41   42   43   44   45   46