Bit operation secara singkat adalah mathematical operation yg berkaitan
dengan bit. Tentu dari pelajaran sekolah dulu anda masih ingat operasi
not (negation), and, or dan xor. Bit operation dalam C itu bekerja
mengikuti aturan itu:

contoh mudahnya:
(decimal) 5 and 3 =
101 (5)
011 (3)
======= and
001 (1)

(decimal) 5 or 3 =
101 (5)
011 (3)
====== or
111 (7)

Yang lebih kompleks:

1010 0101 (165)
0100 0001 (65)
============== or
1110 0101 (229)

Jadi kalau diliat-lihat bit operation hanya melakukan operasi bit untuk
masing2 bit. Bit pertama dibandingkan dengan bit pertama, kedua dengan
kedua.

Ini biasanya dipakai di C untuk ngeset sesuatu. Jadi daripada ada
setumpuk variable yg masing mengatur on/off. Lebih baik ada 1 byte yg
dapat mengatur 8 variable on/off. Cara cek, set ato unset-nya lewat bit
operation:

Misal:
bit-ke 7 6 5 4 3 2 1 0
Fungsi A B C D E F G H

byte mySettings = 0;

// Activate A
mySettings = mySettings | 128; // 128 = 1000 0000

// Activate F
mySettings = mySettings | 4; // 1 = 0000 0100

// saat ini mySettings = 132 (1000 0100)

// Cek apakah A aktif (on)
if (mySettings & 128) // 1000 0100 and 1000 0000 = 1000 0000 > 0, true
  ...

// unset A
mySettings = mySettings xor 128; // 1000 0100 xor 1000 0000 = 0000 0100

Sorry yg terakhir itu lupa XOR di C apaan. Tp kira2 begitulah contoh
kerjanya. Jadi bisa menghemat memory (daripada pake 8 byte cmn utk 8
settings, bisa pake 1 byte utk 8 settings).

Jadi kira2 gambaran kasarnya gitu deh. Semoga membantu.

Rendy Anthony

On Tue, 2005-11-15 at 20:43 +0800, Arman Idris wrote:
> Saya selalu liat di hampir semua tutorial c selalu ada bit operation,
> apa maksud dan fungsi bit operation, kapan dipakenya (bingung aja
> selalu ada, tapi sample selalu samar).


-- 
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis

Kirim email ke