2.1 Landasan Pengetahuan
Untuk dapat memahami dengan mudah bab representasi data
komputer, diperlukan landasan pengetahuan awal tentang sistem bilangan dan
logika matematika
2.2 Sistem Bilangan
Bilangan memiliki basis. Yang biasa dipergunakan adalah basis
10 atau desimal.
Diberikan sebuah bilangan : 5736
Artinya : 5736 = 5000 + 700 + 30 + 6
=
5 . 1000 + 7 . 100 + 3 . 10 + 6 . 1
=
5 . 103 + 7 . 102 + 3 . 101 + 6 . 100
Contoh sederhana basis bilangan lain yang biasa kita temui :
• sistem bilangan jam, menggunakan basis 12
• perhitungan hari, menggunakan basis 7 (misalnya jika dianggap
Ahad=1, Senin=2, … Sabtu =0)
Pada sistem bilangan dengan basis N, digunakan angka-angka 0,1,
.. N-1.
Contoh :
• sistem bilangan desimal (basis 10) menggunakan angka
0,1,2,3,..9
• sistem bilangan biner (basis 2) menggunakan angka 0 dan 1
Jika X sebuah nilai yang direpresentasikan dalam sistem
bilangan dengan basis N sehingga menjadi rangkaian angka bi..b2b1b0,
maka
X = bi.Ni+..+b2.N2+b1.N1+b0.N0 .........................................................................(1)
i
Atau X = ∑
ba.Na
a=0
Secara teoritis, dapat dibuat sistem bilangan dengan basis
berapapun (bulat positif >1)
Perubahan basis
Setiap nilai / besaran tertentu dapat direpresentasikan dengan
berbagai sistem bilangan. Dengan demikian dapat pula dilakukan perubahan basis
bilangan.
dari basis N ke basis 10
Pengubahan dari basis N ke basis 10 dapat dilakukan dengan
menggunakan formula (1) di atas.
Contoh :
3428 akan diubah menjadi basis 10
3428 = 3.82+4.81+2.80
=
3.64+4.8+2.1
=
192+32+2
=
226
2AF16 akan diubah menjadi basis 10
2AF =
2.162+A.161+F.160
=
2.256+10.16+15.1
=
512+160+15
=
687
Untuk digit di belakang koma pada bilangan pecahan, formula (1)
tersebut tetap berlaku.
Contoh
0.011012 akan diubah menjadi basis 10
0.011012 =
1.2-2+1.2-3+1.2-5
=
1/4 + 1/8 + 1/32
=
0.25 + 0.125 + 0.03125
=
0.40625
dari basis 10 ke basis N
Perubahan dari basis 10 ke basis N dilakukan dengan operasi division
(pembagian bulat) dan modulus (sisa pembagian bulat) N.
Contoh :
971 akan diubah menjadi basis 8
971 div 8 = 121, modulus (sisa) = 3
121 div 8 = 15, modulus = 1
15 div 8 = 1, modulus = 7
à 971 = 17138
29 akan diubah menjadi basis 2
29 div 2 = 14, modulus = 1
14 div 2 = 7, modulus = 0
7 div 2 = 3, modulus = 1
3 div 2 = 1, modulus = 1
à27 = 111012
Untuk digit di belakang koma pada bilangan pecahan, perubahan
basis dilakukan dengan mengalikan fraksi pecahan dengan basisnya. Hasil
perkaian tersebut kemudian diambil fraksi bulatnya.
Contoh
0.625 akan diubah menjadi basis 2
0.625 x 2 =
1.25
0.25 x 2 = 0.5
0.5 x 2 = 1.0
0.625 =
0.1012
Aritmatika Basis N
Operasi penjumlahan dan pengurangan dapat dilakukan pada dua
bilangan dengan basis yang SAMA. Perhitungan aritmetika pada basis N dilakukan
serupa dengan pada basis 10.
Contoh
1 1 1
2536 1100112
4216 + 110102 +
11146 10011012
Jika bilangan-bilangan yang dioperasikan dalam kedua contoh di
atas diubah menjadi basis 10, maka hasil perhitungan yang diperoleh tetap akan
sama
2536= 105, 4216= 157, 11146= 262; 105+157=262
1100112 = 51, 110102 = 26, 10011012 = 77;
51+26=77
2.3 Logika Matematika Dasar
Himpunan
Himpunan merupakan kumpulan dari berbagai elemen dengan
karakteristik yang serupa. Suatu himpunan berada dalam semesta tertentu yang
membatasi ruang lingkupnya.
Contoh:
- himpunan bilangan bulat positif < 10
- himpunan bilangan prima < 100
- himpunan mahasiswa Teknik Informatika
- dll
relasi himpunan
1. A himpunan bagian dari B, A ⊆ B,
jika dan hanya jika setiap elemen A adalah juga elemen B
2. A sama dengan B, A = B, jika dan hanya jika A ⊆
B dan B ⊆ A
_
3. Komplemen himpunan A, A = { x | x ∉ A}
kombinasi himpunan
Terdapat beberapa macam relasi himpunan, yaitu
1. Gabungan himpunan A dan B, A ∪ B
2. Irisan himpunan A dan B, A ∩ B
3. Perbedaan simetris
belum dibahas
Contoh
Dari Diagram Venn berikut
S = 1, 2, 3, 4
A = 2, 3 A∪B = 2, 3, 4
B = 3, 4 A∩B = 3
A’ = 1, 4 A-B = 2
B’ = 1, 2 B-A = 4
ALJABAR HIMPUNAN
Berikut operasi-operasi dasar dalam aljabar himpunan
A∪S = S A∩S = A
A∪A = A A∩A = A
A∪A’ = S A∩A’ = ∅
A∪∅ = A A∩∅ = ∅
(A∪B)’ = A’∩B’
(A∩B)’ = A’∪B’
A∪(B∩C) = (A∪B)∩(A∪C)
A∩(B∪C) = (A∩B)∪(A∩C)
A’’ = A
Logika
Dalam logika matematika, setiap pertanyaan atau kombinasi
beberapa pernyataan memiliki nilai TRUE (benar) atau FALSE (salah). Kombinasi
pernyataan dapat disusun dalam operasi-operasi logika, dengan operasi-operasi
dasar sebagai berikut
1. Negasi (NOT), menghasilkan kebalikan nilai kebenaran dari
suatu pernyataan
Tabel kebenaran dari operasi Negasi adalah sebagai berikut
P
|
~p
|
T
|
F
|
F
|
T
|
Lambang dalam diagram logika :
1 2 3
4 S
A B
Tabel kebenaran dari operasi Negasi adalah sebagai berikut
P Q p ∨
q T T T
T
|
F
|
T
|
||
F
|
T
|
T
|
||
F
|
F
|
F
|
||
|
|
|
||
|
|
|
salah, maka kombinasinya akan be
Tabel kebenaran dari operasi Negasi adalah sebagai berikut
P Q p ∧
q T T T
T
|
F
|
F
|
||
F
|
T
|
F
|
||
F
|
F
|
F
|
||
|
|
|
||
|
|
|
turan
A . 0 = 0
A . 1 = A
A + 1 = 1A + A’ = 1
A + A’ . B
A’ + A . B =
um-hukum
am omputer terde data dasar, yaitu
1. Bilangan bula
2. Bilangan pecahan atau floating point
Komputer merepresentasikan data dalam bentuk biner, karena
setiap sel / bit data dalam komputer hanya dapat menyimpan dua macam keadaan,
yaitu voltase tinggi dan voltase rendah. Perbedaan voltase tersebut mewakili
nilai TRUE dan FALSE, atau bit ‘1’ dan ‘0’
Representasi Bilangan Bulat / Integer
Bilangan Bulat Tak Bertanda dapat direpresentasikan dengan
- bilangan biner – oktal - heksadesimal
- gray code
- BCD (binary coded decimal)
- Hamming code
Bilangan bulat bertanda (positif atau negatif) dapat
direpresentasikan dengan
- Sign/Magnitude (S/M)
- 1’s complement
- 2’s complement
Untuk bilangan bulat positif, tidak ada perbedaan dalam ketiga
macam representasi bilangan di atas. Terdapat persamaan dalam ketiga
representasi tersebut berupa digunakannya MSB (most significant bit)
sebagai penanda. MSB bernilai ‘0’ untuk bilangan positif dan ‘1’ untuk bilangan
negatif
|
|
|
|
|
|
|
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
MSB
|
|
|
|
|
|
|
LSB
|
SIGN/MAGNITUDE
Representasi negatif dari suatu bilangan diperoleh dari bentuk
positifnya dengan mengubah bit pada MSB menjadi bernilai 1. Jika dipergunakan N
bit untuk representasi data, maka rentang nilai yang dapat direpresentasikan
adalah -2N-1-1
s.d 2N-1-1
Contoh : jika dipergunakan 5 bit untuk representasi bilangan
+3 = 00011
-3 = 10011
1’S COMPLEMENT
Representasi negatif dari suatu bilangan diperoleh dengan
mengkomplemenkan seluruh bit dari nilai positifnya. Jika dipergunakan N bit
untuk representasi data, maka rentang nilai yang dapat direpresentasikan adalah
-2N-1-1
s.d 2N-1-1
Contoh : jika dipergunakan 5 bit untuk representasi bilangan
+3 = 00011
-3 = 11100
2’S COMPLEMENT
Representasi negatif dari suatu bilangan diperoleh dengan
mengurangkan 2n dengan nilai
positifnya. Jika dipergunakan N bit untuk representasi data, maka rentang nilai
yang dapat direpresentasikan adalah -2N-1 s.d 2N-1-1
Contoh : jika dipergunakan 5 bit untuk representasi bilangan
2n = 25 = 100000
+3 = 00011
-3 = 100000-00011
100000
00011-
11101
-3 = 11101
PERBANDINGAN
Berikut tabel perbandingan ketiga cara representasi bilangan
bulat bertanda tersebut
B
|
Nilai yang direpresentasikan
|
||
b3b2b1b0
|
Sign/Magnitude
|
1’s complement
|
2’s complement
|
0111
|
+7
|
+7
|
+7
|
0110
|
+6
|
+6
|
+6
|
0101
|
+5
|
+5
|
+5
|
0100
|
+4
|
+4
|
+4
|
0011
|
+3
|
+3
|
+3
|
0010
|
+2
|
+2
|
+2
|
0001
|
+1
|
+1
|
+1
|
0000
|
+0
|
+0
|
+0
|
1000
|
-0
|
-7
|
-8
|
1001
|
-1
|
-6
|
-7
|
1010
|
-2
|
-5
|
-6
|
1011
|
-3
|
-4
|
-5
|
1100
|
-4
|
-3
|
-4
|
1101
|
-5
|
-2
|
-3
|
1110
|
-6
|
-1
|
-2
|
1111
|
-7
|
-0
|
-1
|
Representasi Bilangan Pecahan / Floating Point
Bilangan pecahan dapat direpresentasikan dalam bentuk pecahan
biasa atau dalam bentuk scientific.
BENTUK PECAHAN BIASA
Dalam bentuk pecahan biasa, bilangan direpresentasikan langsung
kedalam bentuk binernya. Contoh : 27.625 = 11011.1012
BENTUK SCIENTIFIC
Dalam notasi scientific, bilangan pecahan dinyatakan
sebagai X = ±M . B±E.
M = mantissa
B = basis
E = eksponen
Contoh : 5.700.000 = 57 . 105 M=57, B=10, E=5
Masalah : terdapat tak berhingga banyaknya representasi yang
dapat dibuat. Dalam contoh sebelumnya, 5.700.000 = 57.105 = 570.104 = 5,7.106 = 0,57.107 = 0,057.108 dst. Untuk mengatasinya, ditentukan adanya
bentuk normal, dengan syarat
1/B ≤ |M|< 1
Dengan demikian, bentuk scientific yang normal (memenuhi
persyaratan) dari 5.700.000 adalah 0,57.107
Dalam bentuk normal tersebut, selalu diperoleh mantissa
berbentuk ‘0,…’ sehingga dalam representasinya kedalam bit data, fraksi ‘0,’
tersebut dapat dihilangkan.
Mantissa dan eksponen tersebut dapat direpresentasikan
menggunakan salah satu cara representasi bilangan bulat bertanda yang telah
dibahas di atas. Representasi yang dipilih dapat saja berbeda antara mantissa
dengan eksponennya.
Contoh
- Digunakan untaian 16 bit untuk representasi bilangan pecahan
- 10 bit pertama digunakan untuk menyimpan mantissa dalam
bentuk S/M
- 6 bit sisanya digunakan untuk menyimpan mantissa dalam bentuk
1’s complement
- Akan direpresentasikan bilangan 0,00000075
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
Mantissa
|
Eksponen
|
0,00000075 = 0,75 . 10-6
M = 0,75; E = -6
Representasi Mantissa :
0,75 = 0,112. Karena sudah dalam bentuk normal
‘0,’dapat dihilangkan.
S/M MSB sebagai penanda.
Dengan demikian, mantissa = 0110000000
Representasi Eksponen : 6=1102 . Karena digunakan 6 bit, 1102 = 000110.
1’s complement -6 =
111001
Representasi :
0
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
0
|
0
|
1
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
2.7 Representasi Karakter
Terdapat beberapa macam cara representasi karakter sebagai
berikut
1. ASCII (American Standard Code for Information Interchange)
2. SBCDIC (Standard Binary Coded Decimal Interchanged Code)
3. EBCDIC (Extended Binary Coded Decimal Interchanged Code)
4. Unicode
ASCII
Terdapat dua macam ASCII, yaitu yang mempergunakan 7 bit dan 8
bit. Pada ASCII yang mempergunakan 7 bit, terdapat dua kelompok karakter, yaitu
1. Karakter Kontrol, digunakan untuk mengontrol pengiriman atau
transmisi data
2. Karakter Informasi, merupakan karakter yang mewakili data
Terdapat beberapa macam karakter kontrol, yaitu
- transmission control, digunakan untuk mengendalikan arus data
yang dikirimkan melalui media transmisi. Contoh : SOH (Start of Header), STX
(Start of Text), EOT (End of Text), dll
- format effector, digunakan untuk mengatur susunan secara
fisik dari informasi yang ditampilkan ke layar. Contoh : LF (Line Feed), CR (Carriage
Return), FF (Form Feed), dll
- device control, digunakan untuk mengendalikan peralatan fisik
di terminal
- information separator, digunakan sebagai elemen pembatas data
yang ditransmisikan. Contoh : US (Unit Separator), RS (Record Separator), FS
(File Separator), dll
Unicode
Unicode menggunakan 16 bit untuk merepresentasikan karakter.
Dengan demikian, banyaknya karakter yang dapat direpresentasikan adalah 216 atau 65.536 karakter. Keunggulan Unicode dari
ASCII adalah kemampuannya untuk menyimpan simbol / karakter yang jauh lebih
besar. Himpunan 256 karakter pertama dari Unicode merupakan pemetaan karakter
ASCII 8 bit, sehingga Unicode tetap kompatibel dengan ASCII. Selain
merepresentasikan seluruh karakter ASCII, Unicode dapat merepresentasikan juga berbagai
macam simbol diluar ASCII, seperti huruf Arab, Kanji, Hiragana, Katakana, dan
lain-lain.