SISTEM BILANGAN KOMPUTER
Sistem bilangan adalah kode atau simbol yang digunakan untuk
menerangkan sejumlah hal secara detail. Sistem bilangan adalah bahasa yang
berisi satu set pesan simbul-simbul yang berupa angka dengan batasan untuk
operasi aritmatika penjumlahan, perkalian dan yang lainnya. Pada sistem
bilangan terdapat bilangan integer dan bilangan pecahan dengan titik radix “.”.
(N) r = [ (bagian integer . bagian pecahan) r)
Titik radix
2.1. Sistem Bilangan Biner
Sistem bilangan biner adalah suatu sistem atau cara menghitung
bilangan dengan hanya menggunakan dua simbol angka yaitu ‘0’ dan ‘1’, bilangan
ini sering disebut dengan sistem bilangan berbasis atau radix 2 .Sistem
bilangan biner digunakan untuk mempresentasikan alat yang mempunyai dua keadaan
operasi yang dapat dioperasikan dalam dua keadaan ekstrim. Contoh switch dalam
keadaan terbuka atau tertutup, lampu pijar dalam keadaan terang atau gelap,
dioda dalam keadaan menghantar atau tidak menghantar, transistor dalam keadaan
cut off atau saturasi, fotosel dalam keadaan terang atau gelap, thermostat
dalam keadaan terbuka atau tertutup, Pita magnetik dalam keadaan magnet atau
demagnet.
2.2. Sistem Bilangan Desimal.
Sistem bilangan desimal adalah suatu sistem atau cara menghitung
bilangan dengan menggunakan sepuluh simbol angka yaitu ‘0’ ,‘1’,
‘2’,’3’,’4’,’5’,’6’,’7’,’8’ dan ‘9’ bilangan ini sering disebut dengan sistem
bilangan berbasis atau radix 10. Sistem bilangan desimal kurang cocok digunakan
untuk sistem digital karena sangat sulit merancang pesawat elektronik yang
dapat bekerja dengan 10 level (tiap-tiap level menyatakan karakter desimal
mulai 0 sampai 9)
Sistem bilangan desimal adalah positional-value
system,dimana nilai dari suatu digit tergantung dari
posisinya. Nilai yang terdapat pada kolom
ketiga pada Tabel 2.1., yaitu A, disebut satuan, kolom kedua yaitu B
disebut puluhan, C disebut ratusan, dan seterusnya. Kolom A, B, C menunjukkan
kenaikan pada eksponen dengan basis 10 yaitu 100 = 1, 101 =
10, 102 = 100. Dengan cara yang sama, setiap kolom pada
sistem bilangan biner yang
berbasis 2, menunjukkan eksponen dengan
basis 2, yaitu 20 = 1, 21 = 2, 22=
4, dan seterusnya.
Tabel 2.1. Nilai Bilangan Desimal dan Biner
Kolom desimal
|
Kolom biner
|
C
102 = 100
(ratusan)
|
B
101 = 10
(puluhan)
|
A
100 = 1
(satuan)
|
C
22 = 4
(empatan)
|
B
21 = 2
(duaan)
|
A
20 = 1
(satuan)
|
|
|
|
|
|
|
Setiap digit biner disebut bit; bit paling kanan
disebut least significant bit (LSB), dan bit paling kiri
disebut most significant bit (MSB).
Untuk membedakan bilangan pada sistem yang berbeda digunakan
subskrip. Sebagai contoh 910menyatakan bilangan sembilan pada sistem
bilangan desimal, dan 011012 menunjukkan 01101 pada
sistembilangan biner. Subskrip tersebut sering diabaikan jika sistem bilangan
yang dipakai sudah jelas.
2.3. Sistem Bilangan Oktal.
Sistem bilangan oktal adalah suatu sistem atau cara menghitung
bilangan dengan menggunakan delapan simbol angka yaitu ‘0’ ,‘1’,
‘2’,’3’,’4’,’5’,’6’,dan ’7’ bilangan ini sering disebut dengan sistem bilangan
berbasis atau radix 8. Sistem bilangan oktal digunakan sebagai alternatif
untuk menyederhanakan sistem pengkodean biner. Karena 8 = 23, maka
satu (1) digit oktal dapat mewakili tiga (3) digit biner.
2.4. Sistem Bilangan Heksadesimal.
Sistem bilangan heksadesimal adalah suatu sistem atau cara
menghitung bilangan dengan menggunakan 16 simbol yaitu ‘0’ ,‘1’,
‘2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,
’A’,’B’,
’C’,’D’,’E’, dan ‘F’ bilangan ini sering disebut dengan sistem bilangan
berbasis atau radix 16. Identik dengan sistem bilangan oktal, sistem bilangan
heksadesimal juga digunakan untuk alternatif penyederhanaan sistem
pengkodean biner. Karena 16 = 24, maka satu (1) digit heksadesimal
dapat mewakili empat (4) digit biner.
2.5. Konversi Bilangan
2.5.1. Konversi
bilangan desimal ke biner.
Cara untuk mengubah bilangan desimal ke biner adalah dengan
membagi bilangan desimal yang akan diubah, secara
berturut-turut dengan pembagi 2, dengan memperhatikan sisa pembagiannya. Sisa
pembagian akan bernilai 0 atau 1, yang akan membentuk bilangan biner dengan
sisa yang terakhir menunjukkan MSBnya. Sebagai contoh, untuk mengubah 5210 menjadi
bilangan biner, diperlukan langkah-langkah berikut :
52/2 = 26 sisa 0, LSB
26/2 = 13 sisa 0
13/2 = 6 sisa 1
6/2 = 3 sisa 0
3/2 = 1 sisa 1
½ = 0 sisa
1, MSB
Sehingga
bilangan desimal 5210 dapat diubah menjadi bilangan biner
1101002.
Cara di atas juga bisa digunakan untuk mengubah sistem bilangan
yang lain, yaitu oktal atau heksadesimal.
Tabel 2.2. Daftar Bilangan Desimal dan Bilangan Biner
Ekivalensinya
Desimal
|
Biner
|
C
(MSB)
(4)
|
B
(2)
|
A
(LSB)
(1)
|
0
1
2
3
4
5
6
7
|
0
0
0
0
1
1
1
1
|
0
0
1
1
0
0
1
1
|
0
1
0
1
0
1
0
1
|
2.5.2. Konversi
bilangan desimal ke oktal.
Teknik pembagian yang berurutan dapat digunakan untuk mengubah
bilangan desimal menjadi bilangan oktal. Bilangan desimal yang akan diubah
secara berturut-turut dibagi dengan 8 dan sisa pembagiannya harus selalu
dicatat. Sebagai contoh, untuk mengubah bilangan 581910 ke
oktal, langkah-langkahnya adalah :
5819/8 =
727, sisa 3, LSB
727/8 =
90, sisa 7
90/8 =
11, sisa 2
11/8 =
1, sisa 3
1/8 =
0, sisa 1, MSB
Sehingga
581910 = 132738
2.5.3. Konversi
bilangan desimal ke heksadesimal.
Teknik pembagian yang berurutan dapat juga digunakan
untuk mengubah bilangan desimal menjadi bilangan heksadesimal. Bilangan
desimal yang akan diubah secara berturut-turut dibagi dengan 16 dan
sisa pembagiannya harus selalu dicatat. Sebagai contoh, untuk mengubah
bilangan 340810 menjadi bilangan heksadesimal, dilakukan dengan
langkah-langkah sebagai berikut :
3409/16
= 213,
sisa 110
= 116, LSB
213/16
= 13,
sisa 510
= 516
13/16 = 0,
sisa 1310
= D16,
MSB
Sehingga,
340910 = D5116.
2.5.4. Konversi
bilangan biner ke desimal.
Seperti yang terlihat pada tabel 2.1. sistem bilangan biner adalah
suatu sistem posisional dimana tiap-tiap digit (bit) biner mempunyai bobot
tertentu berdasarkan atas posisinya terhadap titik biner seperti yang
ditunjukkan pada tabel 2.3.
Tabel 2.3. Daftar Bobot tiap bit Bilangan Biner
dan Ekivalensinya dalam desimal
24
|
23
|
22
|
21
|
20
|
2-1
|
2-2
|
2-3
|
Bobot
tiap-tiap bit biner
|
Titik
biner
16
|
8
|
4
|
2
|
1
|
0.5
|
0.25
|
0.125
|
Ekivalensinya dalam
desimal
|
Titik
desimal
Oleh karena itu bilangan biner dapat dikonversikan ke bilangan
desimal dengan cara menjumlahkan bobot dari masing-masing posisinya yang
bernilai 1.
Sebagai contoh, untuk mengubah bilangan biner 1100112 menjadi
bilangan desimal dapat dilakukan sebagai berikut:
1
1 0
0 1
1
Biner
25 + 24 +
21 + 20
32 + 16
+
2 + 1 =
51
Desimal
Sehingga
bilangan biner 1100112 berubah menjadi
bilangan desimal 5110.
Tabel
2.4. adalah contoh perubahan beberapa bilangan biner menjadi bilangan desimal.
Tabel 2.4. Contoh Pengubahan Bilangan Biner menjadi Desimal
Biner
|
Kolom
biner
|
Desimal
|
32
|
16
|
8
|
4
|
2
|
1
|
1110
1011
11001
10111
110011
|
-
-
-
-
1
|
-
-
1
1
1
|
1
1
1
0
0
|
1
0
0
1
0
|
1
1
0
1
1
|
0
1
1
1
1
|
8 + 4
+ 2 + 0 =14
8 + 0
+ 2 + 1 =11
16+ 8
+ 0 + 0 + 1 =25
16+
0 + 4 + 2 + 1 =23
32+16+ 0 + 0
+ 2 + 1 = 51
|
Cara lain untuk mengkonversikan bilangan biner menjadi
bilangan desimal dapat dilakukan dengan cara menjumlahkan angka 2 dengan
pangkat koefisien biner yang berharga 1. Sebagai contoh, untuk mengubah
bilangan 101112 menjadi bilangan desimal, dilakukan dengan
langkah-langkah sebagai berikut :
101112 = 1x 24 + 0x 23 +
1x 22 + 1x 21 + 1x 20 = 2310
2.5.5. Konversi
bilangan biner ke oktal.
Konversi dari bilangan biner ke bilangan oktal
dilakukan dengan mengelompokkan setiap tiga digit biner dimulai dari digit
paling kanan(LSB). Kemudian, setiap kelompok diubah secara terpisah ke dalam
bilangan oktal.
Sebagai contoh, bilangan 111100110012 dapat dikelompokkan
menjadi: 11 110 011 001,
sehingga:
112 = 38,
MSB
1102 = 68
0112 = 38
0012 = 18, LSB
Jadi, bilangan biner 111100110012 apabila diubah menjadi
bilangan oktal = 36318.
2.5.6. Konversi
bilangan biner ke heksadesimal.
Bilangan biner dapat diubah menjadi bilangan heksadesimal dengan
cara mengelompokkan setiap empat digit dari bilangan biner tersebut dimulai
dari digit paling kanan (LSB). Kemudian, setiap kelompok diubah
secara terpisah ke dalam bilangan heksadesimal.
Sebagai contoh, 01001111010111102 dapat
dikelompokkan menjadi:
0100 1111 0101 1110.
Sehingga:
01002 = 416, MSB
11112 = F16
01012 = 516
11102 = E16, LSB
Dengan
demikian, bilangan 01001111010111102 = 4F5E16.
2.5.7. Konversi bilangan oktal ke
desimal.
Sistem bilangan oktal adalah suatu sistem posisional dimana
tiap-tiap digit oktal mempunyai bobot tertentu berdasarkan atas posisinya
terhadap titik oktal seperti yang ditunjukkan pada tabel 2.5.
Tabel
2.5. Daftar Bobot tiap digit
bilangan oktal dan ekivalensinya dalam desimal
84
|
83
|
82
|
81
|
80
|
8-1
|
8-2
|
Bobot
tiap-tiap digit oktal
|
Titik
oktal
4096
|
512
|
64
|
8
|
1
|
0.125
|
0.015625
|
Ekivalensinya dalam
desimal
|
Titik
desimal
Oleh karena itu bilangan oktal dapat dikonversikan ke bilangan
desimal dengan cara menjumlahkan bobot kali nilai-nilai dari masing-masing
posisinya.
Sebagai contoh, untuk mengubah bilangan oktal 3728 menjadi
bilangan desimal dapat dilakukan sebagai berikut:
3
7
2
Oktal
3x82 + 7x81 +
2x80
192 + 56 +
2 =
250
Desimal
Sehingga
bilangan oktal 3728 berubah menjadi
bilangan desimal 25010.
2.5.8. Konversi
bilangan oktal ke biner.
Konversi dari bilangan oktal ke bilangan biner dilakukan dengan
cara mengubah setiap digit pada bilangan oktal secara terpisah menjadi
ekivalen biner 3 digit, seperti yang
terlihat pada Tabel 2.6.
Tabel 2.6. Ekivalen setiap
digit bilangan oktal menjadi 3 bit bilangan biner
Digit oktal
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
Ekivalen biner 3 bit
|
000
|
001
|
010
|
011
|
100
|
101
|
110
|
111
|
Sebagai contoh, bilangan oktal 35278 dapat diubah menjadi
bilangan biner dengan cara sebagai berikut:
38 = 0112, MSB
58 = 1012
28 = 0102
78 = 1112, LSB
Sehingga
bilangan oktal 35278 sama dengan bilangan biner 011
101 010 1112.
2.5.9. Konversi
bilangan oktal ke heksadesimal.
Konversi dari bilangan oktal ke bilangan heksadesimal dapat
dilakukan dengan cara mengubah bilangan oktal ke bilangan biner atau ke
bilangan desimal terlebih dahulu. Sebagai contoh, bilangan oktal3278 dapat diubah menjadi
bilangan heksadesimal dengan cara diubah dulu ke bilangan
desimal, sebagai berikut:
Oktal
3
2
7
Desimal
3x82 + 2x81 +
7x80 = 215
Selanjutnya hasil bilangan desimal diubah ke bilangan heksadesimal,
215/16 = 13,
sisa 710 = 716,
LSB
13/16 = 0,
sisa 1310 = D16, MSB
Sehingga, 3278
= 215 10 = D716.
Cara lain diubah dulu ke bilangan biner, sebagai berikut:
Oktal
3
2
7
Biner
011
010 111
Selanjutnya hasil bilangan biner dikelompokkan setiap
empat bit dimulai dari digit paling kanan(LSB). Kemudian, setiap
kelompok diubah secara terpisah ke dalam bilangan heksadesimal.
Biner
0
1101 0111
Heksadesimal
0
D
7
Sehingga, 3278
= 110101112 = D716.
2.5.10. Konversi
bilangan heksadesimal ke desimal.
Sistem bilangan heksadesimal adalah suatu sistem posisional dimana
tiap-tiap digit heksadesimal mempunyai bobot tertentu berdasarkan atas
posisinya terhadap titik heksadesimal seperti yang ditunjukkan pada tabel 2.7.
Tabel
2.7. Daftar Bobot tiap digit
bilangan heksadesimal dan ekivalensinya dalam desimal
162
|
161
|
160
|
16-1
|
16-2
|
Bobot
tiap-tiap digit heksadesimal
|
Titik
heksadesimal
256
|
16
|
1
|
0.0625
|
0.00390625
|
Ekivalensinya dalam
desimal
|
Titik
desimal
Oleh karena itu bilangan heksadesimal dapat dikonversikan ke
bilangan desimal dengan cara menjumlahkan bobot kali nilai-nilai dari
masing-masing posisinya.
Sebagai contoh, bilangan heksadesimal 152B16 dapat diubah menjadi
bilangan desimal dengan carasebagai berikut:
152B16
= (1 x 163) + (5 x 162) + (2 x 161)
+ (11 x 160)
= 1 x 4096 + 5 x 256 + 2 x
16 + 11 x 1
= 4096 +
1280 +
32 + 11
= 541910
Sehingga, 152B16
= 541910
2.5.11. Konversi bilangan heksadesimal ke biner.
Konversi dari bilangan heksadesimal ke bilangan biner dapat
dilakukan dengan cara mengubah setiap digit pada
bilangan heksadesimal secara terpisah menjadi ekivalen biner
4 bit, seperti yang terlihatpada Tabel 2.8.
Tabel 2.8. Ekivalen setiap
digit dari bilangan heksadesimal menjadi 4
bit bilangan biner
Digit
Heksadesimal
|
Ekivalen
biner 4 bit
|
0
|
0000
|
1
|
0001
|
2
|
0010
|
3
|
0011
|
4
|
0100
|
5
|
0101
|
6
|
0110
|
7
|
0111
|
8
|
1000
|
9
|
1001
|
A
|
1010
|
B
|
1011
|
C
|
1100
|
D
|
1101
|
E
|
1110
|
F
|
1111
|
Sebagai
contoh, bilangan heksadesimal 2A5C16 dapat diubah ke
bilangan biner sebagai berikut.
216 = 0010, MSB
A16 = 1010
516 = 0101
C16 = 1100, LSB
Sehingga, bilangan heksadesimal 2A5C16 dapat diubah menjaid bilngan biner
0010 1010 0101 11002.
2.5.12. Konversi
bilangan heksadesimal ke oktal.
Konversi dari bilangan heksadesimal ke bilangan oktal dapat
dilakukan dengan cara mengubah bilangan heksadesimal ke bilangan biner atau ke
bilangan desimal terlebih dahulu.
Sebagai contoh, bilangan heksadesimal 9F216 dapat diubah menjadi
bilangan oktal dengan cara diubah dulu ke bilangan desimal, sebagai
berikut:
Heksadesimal
9
F
2
Desimal
9x162 + 15x161
+ 2x160 =
2304 + 240
+ 2 = 254610
Selanjutnya hasil bilangan desimal diubah ke bilangan oktal,
2546/8 =
318,
sisa 210 = 28,
LSB
318/8 = 39,
sisa 610 = 68,
39/8 =
4,
sisa 710 = 78,
4/8 =
0,
sisa 410 = 48,
MSB
Sehingga, 9F216 =
2546 10 = 47628.
Cara lain diubah dulu ke bilangan biner, sebagai berikut:
Heksadesimal
9
F
2
Biner
1001 1111
0010
Selanjutnya hasil bilangan biner dikelompokkan setiap tiga bit
dimulai dari digit paling kanan (LSB).Kemudian, setiap kelompok
diubah secara terpisah ke dalam bilangan heksadesimal.
Biner
100
111 110
010
Heksadesimal
4
7
6
2
Sehingga, 9F216
= 1001111100102 = 47628.
2.6. Bilangan Biner Pecahan
Dalam sistem bilangan desimal, bilangan pecahan disajikan dengan menggunakan
titik desimal. Digit-digit yang berada di sebelah kiri titik desimal mempunyai
nilai eksponen yang semakin besar, dan digit-digit yang berada di sebelah kanan
titik desimal mempunyai nilai eksponen yang semakin kecil.
Sehingga,
0.110 = 10-1
= 1/10
0.1010 = 10-2‑ =
1/100
0.2 = 2 x
0.1 = 2 x 10-1, dan seterusnya.
Cara
yang sama juga bisa digunakan untuk menyajikan bilangan biner pecahan.
Sehingga,
0.12 = 2-1
= ½, dan
0.012
= 2-2‑ =
½2 = ¼
Sebagai
contoh,
0.1112
= 1/2 + 1/4 + 1/8
= 0.5 + 0.25 + 0.125
= 0.87510
101.1012 =
4 + 0 + 1+ ½ + 0 + 1/8
= 5 + 0.625
= 5.62510
Pengubahan bilangan pecahan dari desimal ke biner dapat dilakukan
dengan cara mengalikan bagian pecahan dari bilangan desimal tersebut dengan 2,
bagian bulat dari hasil perkalian merupakan pecahan dalam bit biner. Proses
perkalian diteruskan pada sisa sebelumnya sampai hasil perkalian sama dengan 1
atau sampai ketelitian yang diinginkan. Bit biner pertama yang diperoleh
merupakan MSB dari bilangan biner pecahan. Sebagai contoh, untuk mengubah 0.62510 menjadi
bilangan biner dapat dilaksanakan dengan
0.625 x 2 = 1.25, bagian bulat
= 1 (MSB), sisa = 0.25
0.25 x 2 = 0.5, bagian
bulat = 0, sisa = 0.5
0.5 x 2 = 1.0,
bagian bulat = 1 (LSB), tanpa
sisa
Sehingga,
0.62510 = 0.1012