5-Bab V
5-Bab V
1. Pendahuluan
Setelah mengetahui macam-macam tipe data maka sekarang akan di bahas tentang
operasi apa saja yang dapat dilakukan terhadap suatu data.
Contoh :
EKSPRESI
UNGKAPAN
1+2=3
OPERATOR OPERAN
Operator adalah simbol atau kata yang digunakan dalam program untuk melakukan
operasi, dan bersama operan akan membentuk suatu ekspresi atau
ungkapan.
Operan dalam suatu ekspresi dapat berupa:
- konstanta,
- variabel,
- pemanggilan fungsi
- himpunan
B. Operator Aritmatik
- Hanya untuk operan bertipe bilangan bulat atau bilangan real.
- Ada 2 jenis operator yaitu
1. Operator aritmatik tunggal
- melibatkan 1 operan (bersifat unary)
- operator ‘+ ‘dan ‘– ‘
- contoh : +5 , –7
2. Operator aritmatik biner
- melibatkan 2 operan
Operator Operasi
Not Invers
And Logika and
Or Logika or
Xor Logika xor
Shl Pergeseran bit ke kiri
Shr Pergeseran bit ke kanan
Tabel berikut memberikan seluruh kemungkinan bit operan dan hasil operasi :
Manfaat operator berorientasi bit ini cukup banyak, terutama pada pemrograman sistem
karena mesin komputer hanya mengenal bahasa mesin.
Untuk memperjelas kegunaan operator ‘and’, ‘or’ dan ‘xor’, perhatikan contoh berikut.
Contoh :
Misalkan diketahui 2 variabel bertipe dara real A dan B yang masing – masing bernilai
12 dan 10.
Penyelesaian :
Diketahui : nilai A := 12; B := 10;
Ditanyakan : C := A and B;
D := A or B;
E := A xor B;
Jawab :
Konversi bilangan desimal ke biner agar dapat dioperasikan.
A = 1210 = 000011002
B = 1010 = 000010102
Operator not hanya dapat dikenakan pada satu operan saja. Operator ini membalik
bit- bit pada operannya yaitu dengan cara bit dengan nilai 0 diganti 1 sedangkan bit
dengan nilai 1 diganti 0.
Jawab :
Konversi bilangan desimal ke biner agar dapat dioperasikan.
21910 = 110110112
a. Operasi A SHR 1, maka bit dari A digeser ke kanan sepanjang 1 bit dan 1 bit
terakhir hilang. Karena hasil pergeseran hanya sepanjang 7 bit maka bit awal
ditambah 1 bit dengan nilai 0.
b. Operasi A SHL 2, maka bit dari A digeser ke kiri sepanjang 2 bit dan 2 bit awal
hilang. Karena hasil pergeseran hanya sepanjang 6 bit maka bit akhir ditambah 2
bit dengan nilai 0.
0 1 1 0 1 1 0 0 = 10810
F F T F F F
F T T T T F
T F F T T F
T T F T F T
Keterangan : T : True (Benar)
F : False (Salah)
Contoh:
Misalkan diketahui dua variabel A dan B yang masing-masing bernilai true dan
false.
Ditanyakan : D = A and B
E = A or B
F = A xor B
Jawab :
D = true and false = false
E = true or false = true
F = true xor false = true
Operator not hanya dikenakan pada sebuah operan, dengan bentuk not operan.
Operator akan mengembalikan nilai true jika operannya bernilai false, dan sebaliknya.
Contoh :
Dari contoh di atas tentukan G = A and not B
Jawab:
G = true and not false
= true and true = true
F. Operator Pembanding (relasi)
Operator pembanding adalah operator yang digunakan untuk membandingkan
dengan nilai yang dikeluarkan bertipe data Boolean.
G. Operator Himpunan
Sesuai dengan namanya operator ini hanya digunakan pada tipe himpunan. Tabel
berikut menunjukkan operator yang digunakan pada tipe data himpunan
Operator Operasi
+ Union
- Selisih
* Interseksi
in Anggota dari
3. Derajat Operator
Karena ada beberapa operator yang memungkinkan terdapat dalam satu ekspresi
maka harus ditentukan operator mana yang harus dikerjakan terlebih dahulu dan mana yang
terakhir. Pengetahuan tentang prioritas operator perlu dikuasai sehingga tidak menimbulkan
hasil yang salah ataupun kesalahan sintaks. Tabel berikut memberikan urutan pengerjaan
operator :
@ not Tertinggi
+ – Or Xor Ketiga
Contoh 2 :
False or True and True
True
True
Contoh 3 :
True Xor not True
False
True
Contoh 4 :
3 * 4 + 15 mod 2
12 + 1
13
Contoh 5 :
Contoh yang menimbulkan kesalahan :
Kar >= ‘A’ and Kar <= ‘Z’
Penimbul kesalahan : and adalah operator boolean
Sesuai dengan derajat operator, jika tanpa tanda kurung maka operator ‘and’ yang akan
diproses terlebih dahulu baru operator pembanding. ‘A’ adalah data bertipe karakter dan Kar
adalah variabel bertipe karakter, sedangkan operator ‘and’ adalah operator Boolean
(operator dengan operan bertipe data Boolean).
Sesuai dengan derajat operator maka yang berada di dalam tanda kurung diproses terlebih
dahulu, setelah itu operator ‘and’ diproses
Soal-soal
1. Berapakah hasil dari ekspresi berikut dan hasilnya berupa integer, real atau ada kesalahan!
a. 10 – 6 *2
b. 7/3 *5
c. 7 div 3 – 1
d. 7 mod 3 *2
e. 45 + 3 * 2 / 3