dikt2

34
Modul I dan II Page 14 PERTEMUAN : 2 SISTEM BILANGAN Deskripsi singkat : Dalam pertemuan ini akan dibahas mengenai pengenalan sistem Bilangan pada komputer dan bahasa assembly serta fungsi-fungsi yang dalam pengaksesan ke port dengan bahasa assembly. Tujuan Pembelajaran : 1. Dapat memahami fungsi bilangan biner, octal, decimal, heksadesimal yang dibutuhkan untuk mempelajari bahasa assembler. 2. Memahami jenis-jenis sistem bilangan yang digunakan pada teknik mikroprosessor 3. Memahami konversi sistem bilangan desimal ke sistem bilangan biner 4. Memahami konversi sistem bilangan desimal ke sistem bilangan oktal 5. Memahami konversi sistem bilangan desimal ke sistem bilangan heksadesimal 6. Memahami konversi sistem bilangan biner ke sistem bilangan oktal atau sebaliknya 7. Memahami konversi sistem bilangan biner ke sistem bilangan heksadesimal atau sebaliknya 8. Memahami konversi sistem bilangan desimal dan sistem bilangan biner antara 0 dan 1 9. Mampu merubah bilangan desimal ke bentuk BCD atau sebaliknya 10. Mampu merubah bilangan desimal ke bentuk BCH atau sebaliknya 11. Memahami ASCII Code untuk pembentukan karakter

Transcript of dikt2

Modul I dan II Page 14

PERTEMUAN : 2

SISTEM BILANGAN

Deskripsi singkat : Dalam pertemuan ini akan dibahas mengenai pengenalan sistem

Bilangan pada komputer dan bahasa assembly serta fungsi-fungsi yang dalam pengaksesan ke

port dengan bahasa assembly.

Tujuan Pembelajaran :

1. Dapat memahami fungsi bilangan biner, octal, decimal, heksadesimal yang dibutuhkan

untuk mempelajari bahasa assembler.

2. Memahami jenis-jenis sistem bilangan yang digunakan pada teknik mikroprosessor

3. Memahami konversi sistem bilangan desimal ke sistem bilangan biner

4. Memahami konversi sistem bilangan desimal ke sistem bilangan oktal

5. Memahami konversi sistem bilangan desimal ke sistem bilangan heksadesimal

6. Memahami konversi sistem bilangan biner ke sistem bilangan oktal atau sebaliknya

7. Memahami konversi sistem bilangan biner ke sistem bilangan heksadesimal atau

sebaliknya

8. Memahami konversi sistem bilangan desimal dan sistem bilangan biner antara 0 dan 1

9. Mampu merubah bilangan desimal ke bentuk BCD atau sebaliknya

10. Mampu merubah bilangan desimal ke bentuk BCH atau sebaliknya

11. Memahami ASCII Code untuk pembentukan karakter

Modul I dan II Page 15

2.1 Bilangan

Sistem bilangan (Number System) adalah suatu cara untuk mewakili besaran dari suatu sistem

fisik. Sistem bilangan yang banyak digunakan oleh manusia adalah sistem bilangan decimal,

yaitu sistem bilangan yang menggunakan 10 macam symbol untuk mewakili besaran. Sistem ini

banyak dipergunakan oleh manusia karena konsep yang digunakan adalah manusia memiliki 10

buah jari yang bisa membantu perhitungan-perhitugan menggunakan sistem decimal. Sistem

bilangan pada sebuah komputer, diwakili oleh bentuk elemen dua keadaan (Two-State Elements),

yaitu keadaan off (tidak ada arus) dan keadaan on (ada arus). Konsep ini yang digunakan dalam

sistem bilangan biner, yaitu hanya menggunakan 2 macam nilai untuk mewakili suatu besaran

nilai. Disamping sistem bilangan biner (Binary Number System), komputer juga menggunakan

sistem bilangan yang lain, yaitu sistem bilangan octal (Octal Number System) dan sistem

bilangan hesadesimal (Heksadesimal Number System). Sistem bilangan menggunakan suatu

bilangan dasar atau basis (base atau disebut juga radix) tertentu. Basis yang dipergunakan oleh

masing-masing sistem bilangan tergantung pada bobot bilangan yang dipergunakan.

Sistem bilangan yang dibutuhkan untuk mempelajari bahasa assembler adalah :

1. Basis bilangan biner (basis 2)

2. Basis bilangan Oktal (basis 8)

3. Basis bilangan Desimal (Basis 10)

4. Basis bilangan Heksadesimal (basis 16)

Tabel 1.1 Sistem Bilangan

Sistem Bilangan Radix Digit Mutlak

binary 2 01

ternary 3 012

quarternary 4 0123

quinary 5 01234

senary 6 012345

septenary 7 0123456

octenary (octal) 8 01234567

nonary 9 012345678

denary (decimal) 10 0123456789

Modul I dan II Page 16

undenary 11 0123456789A

duodenary 12 0123456789AB

tredenary 13 0123456789ABC

quatuordenary 14 0123456789ABCD

quidenary 15 0123456789ABCDE

hexadenary (hexadecimal) 16 0123456789ABCDEF

2.2 Bilangan Desimal

Sistem ini menggunakan 10 macam symbol yaitu 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9. system ini

menggunakan basis 10. Bentuk nilai ini dapat berupa integer desimal atau pecahan.

Integer desimal adalah nilai desimal yang bulat, misalnya 8598 dapat diartikan :

8 x 103 = 8000

5 x 102 = 500

9 x 101 = 90

8 x 100 = 8

8598

position value/palce value

absolute value

Absolue value merupakan nilai mutlak untuk masing-masing digit bilangan, sedangkan

position value adalah merupakan penimbang atau bobot dari masing-masing digit tergantung dari

letak posisinya, yaitu bernilai basis dipangkatkan dengan urutan posisinya.

Tabel 2.1 Nilai Posisi dari Nilai Mutlak

Posisi Digit (dari kanan) Position Value

1 100 =1

2 101 =10

3 102 =100

4 103 =1000

5 104= 10000

……. …….

……. …….

Modul I dan II Page 17

Dengan demikian, nilai 8598 dapat juga diartikan sebagai

(8*1000)+(5*100)+(9*10)+(8*1).

Pecahan desimal adalah nilai desimal yang mengandung nilai pecahan dibelakang koma,

misalnya nilai 183,75 adalah pecahan desimal yang dapat diartikan :

1 x 10 2 = 100

8 x 10 1 = 80

3 x 10 0 = 3

7 x 10 –1 = 0,7

5 x 10 –2 = 0,05

183,75

Interger decimal maupun pecahan desimal dapat ditulis dalam bentuk eksponen. Misalnya,

nilai 89, 15 dapat dituliskan 0,8915 * 102. Setiap nilai decimal yang bukan 0 (nol) dapat

dituliskan dalam bentuk standar (Standard Exponential Form) seperti pada tabel 2.2 dibawah ini.

Tabel 2.2 Standard Exponential Form

Terlihat bahwa mantissa selalu lebih besar atau sama dengan -0,1 dan lebih kecil atau sama

dengan 0,1. Bentuk penulisan dengan Standard Exponential Form disebut Floating-Point

Number.

Sistem bilangan decimal menggunakan komplemen, dilakukan untuk mengurangi dua buah

bilangan dimana kedua bilangan kedua lebih besar daripada bilangan pertama. Didalam sistem

bilangan decimal, ada 2 macam komplemen yang digunakan, yaitu komplemen 9 (9’s

complement atau nine’s complement yang merupakan komplemen basis minus 9) dan

komplemen 10 (10’s complement atau ten’s complement yang merupakan komplemen basis).

Contoh pengurangan dalam bentuk decimal.

Modul I dan II Page 18

34(10) – 165(10)

Caranya:

• 9’s complement (bilangan kedua)

• 9’s complement (165)� (999-165) = 834

• Komplemen 10 (10’s complement (bilangan kedua) + 1) = 835

• Jumlahkan 34(10) + 835(10) = 869(10)

2.3 Bilangan Biner

Semua bilangan, data maupun program itu sendiri akan diterjemahkan oleh komputer ke

dalam bentuk biner. Jadi pendefinisisan data dengan jenis bilangan apapun (Desimal, oktaf dan

hexadesimal) akan selalu diterjemahkan oleh komputer ke dalam bentuk biner.

Komputer memproses data maupun program berupa sejumlah bilangan biner yang

menyatakan keadaan hiudp atau mati (on or of) dengan angka 1 dan 0. Sesuai dengan uraian

diatas, maka dapat disimpulkan bahwa semua yang diproses komputer sebenarnya hanya angka 0

dan 1, sehingga sistem bilangan biner yang terdiri dari angk 0 dan 1 sangatlah penting untuk

dipelajari lebih lanjut. Bilangan biner hanya terdiri dari 1 dan 0, maka dapat disimpulkan bahwa

bilangan biner itu berbasis 2.

Setiap angka digit dalam sistem bilangan biner disebut Bit, jika bentuk 4 bit disebut Nibble,

bentuk 8 disebut Byte, bentuk 2 (two) Byte disebut Word, bentuk two word disebut Double Word.

Gambar 2.1 Digit dalam sistem biner

Catatan :

Modul I dan II Page 19

1. Bilangan 0 dan 1 merupakan bilangan biner yang disebut BIT (Binary digit).

2. Kumpulan dari 4 bit disebut NIBBLE. Nibble beranjak dari bilangan 0 sampai

dengan 15 (bilangan desimal) dan 0 sampai dengan F (bilangan hex).

3. Satu BYTE terdiri dari 8 bit atau 2 nibble. Angka beranjak dari bilangan 0 sampai

dengan 255 (desimal) dan 00 sampai dengan FF (hexadesimal)

4. Satu WORD terdiri dari 16 bit.

5. Satu DOUBLE WORD terdiri dari 32 bit

6. Satu PARAGRAF terdiri dari 128 bit.

7. Sati PAGE (halaman) terdiri dari 256 byte (2048 bit)

Gambar 2.3 Hubungan Bit, Nibble, Byte dan Word

Notasi biner merupakan integer dengan menggunakan simbol 0 dan 1. Jika pada notasi basis

memiliki kuantitas posisi satuan, puluhan, ratusan dan seterusnya, pada notasi biner memiliki

kuantitas posisi satu (20), dua (2

1), empat (2

2), delapan (2

3), dan seterusnya. Untuk mengubah

integer basis dua (biner) menjadi basis sepuluh yaitu dengan cara mengalikan setiap digit dengan

kuantitas posisinya. Contoh:

8. 1101(2) = 1 x 23 + 1 x 2

2 + 0 x 2

1 +1 x 2

0

= 8 + 4 + 0 + 1

= 13(10)

Modul I dan II Page 20

Jadi 1101(2) = 13(10)

9. 110012 = 1 × 24 + 1 × 2

3 + 1 x 2

2 + 0 x 2

1 +1 x 2

0

= 16 + 8 + 1

= 25

Ada aturan untuk menambahkan "b" pada akhir angka biner , dengan cara ini kita dapat

menentukan bahwa 101b adalah angka biner dengan nilai desimal dari 5. Angka biner

10100101b sama dengan nilai decimal dari 165 dan 10000101b sama dengan 133 :

Gambar 2.4 Penentuan biner 10100101b ke decimal 165

Gambar 2.5 Penentuan biner 10000101b ke decimal 133

Agar lebih mengerti tentang nilai posisi dari sistem bilangan biner, perhatikan posisi digit

seperti pada tabel 2.1 dan tabel 2.2.

Modul I dan II Page 21

Tabel 2.1 Posisi Digit dari Sistem Bilangan Biner

Posisi Digit (dari kanan) Position Value

1 20 =1

2 21 =2

3 22 =4

4 23 =8

5 24=16

……. …….

……. …….

Tabel 2.2 Posisi Sistem Bilangan Biner dan Desimal

Untuk mengetahui lebih jelas mengenai bilangan konversi biner ke desimal, dapat dilihat

pada tabel 2.4.

Tabel 2.4 Konversi Bilangan Biner ke Desimal

Modul I dan II Page 22

Konsep sistem bilangan biner adalah menggunakan 2 macam simbol bilangan berbasis 2 digit

angka, yaitu 0 dan 1. Berikut cara lain dengan contoh bilangan 1001 dapat diartikan :

1 0 0 1

1 x 2 0 = 1

0 x 2 1 = 0

0 x 2 2 = 0

1 x 2 3 = 8

9 (10)

2.1.1 Operasi aritmetika pada bilangan Biner :

a. Penjumlahan

Dasar penjumlahan biner adalah :

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 0 dengan carry of 1, yaitu 1 + 1 = 2, karena digit terbesar biner 1,

maka harus dikurangi dengan 2 (basis), jadi 2 – 2 = 0 dengan carry of 1.

contoh :

1111

10100 +

100011

atau dengan langkah :

1 + 0 = 1

1 + 0 = 1

1 + 1 = 0 dengan carry of 1

1 + 1 + 1 = 0

1 + 1 = 0 dengan carry of 1 1 0 0 0 1 1

Modul I dan II Page 23

b. Pengurangan

Bilangan biner dikurangkan dengan cara yang sama dengan pengurangan bilangan

desimal. Dasar pengurangan untuk masing-masing digit bilangan biner adalah :

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 – 1 = 1 dengan borrow of 1, (pijam 1 dari posisi sebelah kirinya).

Contoh :

11101

1011 -

10010

dengan langkah – langkah :

1 – 1 = 0

0 – 1 = 1 dengan borrow of 1

1 – 0 – 1 = 0

1 – 1 = 0

1 – 0 = 1

1 0 0 1 0

Pengurangan menggunakan komplemen, dilakukan untuk mengubah pengurangan

menjadi bentuk penjumlahan. Didalam sistem biner terdapat 2 macam komplemen yang

dipergunakan,yaitu komplemen 1 (1’s complement atau one’s complement yang merupakan

komplemen basis minus 1) dan komplemen 2 (2’s complement atau one’s complement yang

merupakan komplemen basis).

Contoh pengurangan dalam ukuran byte (8 bit) berikut :

1. 0000 0010(2) – 0000 0011(2)

Caranya :

• Not (bilangan kedua), Not (0000 0011) = 1111 1100

• Komplemen dua (Not(bilangan kedua)+1) = 1111 1101

• Jumlahkan 0000 0010(2) + 1111 1101(2) = 1111 1111(2)

Modul I dan II Page 24

c. Perkalian

Dilakukan sama dengan cara perkalian pada bilangan desimal. Dasar perkalian bilangan

biner adalah :

0 x 0 = 0

1 x 0 = 0

0 x 1 = 0

1 x 1 = 1

contoh

Desimal Biner

14

12 x

28

14 +

168

1110

1100 x

0000

0000

1110

1110 +

10101000

d. Pembagian

Pembagian biner dilakukan juga dengan cara yang sama dengan bilangan desimal.

Pembagian biner 0 tidak mempunyai arti, sehingga dasar pembagian biner adalah :

0 : 1 = 0

1 : 1 = 1

Desimal Biner

5 / 125 \ 25

10 -

25

25 -

0

101 / 1111101 \ 11001

101 -

101

101 -

0101

101 -

0

Modul I dan II Page 25

2.1.2 Pecahan Biner ke Desimal

Sebaliknya, untuk konversi dari pecahan biner ke desimal, dapat dilihat melalui

contoh berikut: Misalkan yang ingin dikonversi adalah 0.10112.

Dalam hal ini, kita perlu melihat terlebih dahulu bilangan di belakang koma, yaitu

10112. Untuk mendapatkan bilangan desimal, bilangan tersebut dikalikan berturut 2 dengan

1/21, 1/2

2, 1/2

3, …. 1/2

n.

Masukkan nilai bilangan tersebut, maka :

1 x 1/21 = ½

0 x 1/22 = 0

1 x 1/23 = 1/8

1 x 1/24 = 1/16

Langkah berikutnya adalah menjumlah seluruh bilangan di atas, sehingga

menghasilkan : 1/2 + 0 + 1/8 + 1/16 = 11/16 = 0,687510.

Bilangan tersebut tinggal dijumlah ke bilangan di depan koma. Karena di depan koma

adalah 02, dimana kalau dikonversi ke desimal menjadi 010, maka hasil akhir adalah :

010 + 0.687510 = 0.687510.

2.4 Bilangan Oktal

Selain mengenal bilangan biner, komputer juga mengenal beberapa sistem bilangan lain.

Salah satunya adalah bilangan octal. Bilangan octal meliputi angka 0 hingga 7, sesuai dengan

namanya octal yang berarti 8.

Pada bilangan oktal hanya menggunakan 8 simbol yaitu angka 0, 1, 2, 3, 4, 5, 6 dan 7 dan

setiap nilai tempat mempunyai kelipatan 8 0

, 8 1

, 8 2

, 8 3

, 8 4

, dst. Sistem bilangan octal

menggunakan basis 8. Dalam bahasa assembler, sistem bilangan octal jarang digunakan.

Konversi bilangan octal ke decimal memiliki cara yangsama dengan melakukan konversi

bilangan biner ke decimal.

Bilangan octal merupakan bilangan berdasar delapan, contoh bilangan terdiri angka 0 hingga

7, seperti terlihat dalam tabel 2.5.

Tabel 2.5 Bilangan Oktal, Biner dan Desimal

Modul I dan II Page 26

Nilai posisi sistem bilangan octal merupakan perpangkatan dari nilai 8, seperti yang terlihat

dalam tabel 2.6

Tabel 2.6 Nilai Posisi pada Bilangan Oktal

Posisi Digit (dari kanan) Position Value

1 80 = 1

2 81 = 8

3 82 = 64

4 83 = 512

5 84= 4096

……. …….

……. …….

Modul I dan II Page 27

Position value system bilangan octal adalah perpangkatan dari nilai 8.

Contoh :

12(8) = …… (10)

2 x 8 0 = 2

1 x 8 1 =8

10

Jadi 10 (10)

2.4.1 Operasi Aritmatika pada Bilangan Oktal

a. Penjumlahan

Langkah-langkah penjumlahan octal :

- Tambahkan masing-masing kolom secara desimal

- Ubah dari hasil desimal ke octal

- Tuliskan hasil dari digit paling kanan dari hasil octal

- Jika hasil penjumlahan tiap-tiap kolom terdiri dari dua digit, maka digit paling kiri

merupakan carry of untuk penjumlahan kolom selanjutnya.

Modul I dan II Page 28

Tabel 2.7 Penjumlahan Satu Digit pada Bilangan Oktal

0 1 2 3 4 5 6 7

0 0 1 2 3 4 5 6 7

1 1 2 3 4 5 6 7 10

2 2 3 4 5 6 7 10 11

3 3 4 5 6 7 10 11 12

4 4 5 6 7 10 11 12 13

5 5 6 7 10 11 12 13 14

6 6 7 10 11 12 13 14 15

7 7 10 11 12 13 14 15 16

Pada tabel 2.7, penjumlahan angka 7 langsung menuju ke angka 10. Hal ini merupakan

bilangan oktal yang terdiri dari 0, 1, 2, 3, 4, 5, 6, 7 dimana nilai maksimal adalah 7. Dan apabila

lebih dari 7 maka itu adalah carry of dan sisanya akan dijumlahkan pada kolom berikutnya.

Contoh :

1 + 6 = 7. ----- > tidak lebih dari 7. Maka tetap.

1 + 7 = 8. ----- > carry of 1 dan sisa 0, maka hasilnya adalah 10 (8 mod 8= hasil 1 sisa 0)

2 + 7 = 11. --- > carry of 1 dan sisa 1, maka hasilnya adalah 11 (9 mod 8= hasil 1 sisa 1)

Untuk memudahkan perhitungan, dapat digunakan persamaan berikut ini :

Hasil = n * 10 + (jumlah bilangan mod 8)

n = banyaknya modulo yang terjadi

Contoh:

7(8) + 6(8) + 4(8) =

17 mod 8 = hasil 2 sisa 1

= 21

Modul I dan II Page 29

Contoh :

Desimal Oktal

21

87 +

108

25

127 +

154

5 10 + 7 10 = 12 10 = 14 8

2 10 + 2 10 + 1 10 = 5 10 = 5 8

1 10 = 1 10 = 1 8

b. Pengurangan

Pengurangan Oktal dapat dilaukan secara sama dengan pengurangan bilangan desimal.

Contoh :

Desimal Oktal

108

87 -

21

154

127 -

25

4 8 - 7 8 + 8 8 (borrow of) = 5 8

6 8 - 2 8 - 1 8 = 2 8

1 8 - 1 8 = 0 8

Untuk mengurangi dua buah bilangan, di mana bilangan kedua lebih besar daripada

bilangan pertama, biasanya komputer menggunakan metode yang disebut komplemen

(complement), yaitu dengan komplemen basis minus 7 (radix-minus-seven complement)

atau komplemen basis (radix complement). Kompelemen pada dasarnya mengubah

bentuk pengurangan menjadi bentuk penambahan. Di dalam sistem bilangan octal ada 2

macam komplemen yang dipergunakan, yaitu komplemen 7 (7’s complement atau seven’s

complement yang merupakan komplemen basis minus 7) dan komplemen 8 (8’s

complement atau eight’s complement yang merupakan komplemen basis).

Contoh pengurangan dalam bentuk octal adalah :

34(8) – 165(8)

Modul I dan II Page 30

Caranya :

• 7’s complement (bilangan kedua): (165)� (777-165) =612

• 8’s complement (bilangan kedua) + 1 = 613

• Jumlahkan 34(8) = 613(8) = 647(8)

c. Perkalian

Langkah – langkah :

- Kalikan masing-masing kolom secara desimal

- Ubah dari hasil desimal ke octal

- Tuliskan hasil dari digit paling kanan dari hasil octal

- Kalau hasil perkalian tiap kolol terdiri dari 2 digit, maka digit paling kiri

merupakan carry of untuk ditambahkan pada hasil perkalian kolom selanjutnya.

Contoh :

Desimal Oktal

14

12 x

28

14 +

168

16

14 x

70

4 10 x 6 10 = 24 10 = 30 8

4 10 x 1 10 + 3 10 = 7 10 = 7 8

16

14 x

70

16

1 10 x 6 10 = 6 10 = 6 8

1 10 x 1 10 = 1 10 = 1 8

16

14 x

70

Modul I dan II Page 31

16 +

250

7 10 + 6 10 = 13 10 = 15 8

1 10 + 1 10 = 2 10 = 2 8

Perhatikan hasil kali antara 6 * 4 = 24, sehingga hasil yang didapat (24 mod 8 = 3 sisa 0)

di-modulo/bagi dengan 8 dan diperoleh 3 sisa 0, lalu 4 * 1 =4 ditambah dengan carry of (4 +

3 = 7) 3 = 7. Lakukan hal yang serupa pada proses penjumlahannya.

Tabel 2.8 Hasil Perkalian Digit Oktal

0 1 2 3 4 5 6 7

0 0 0 0 0 0 0 0 0

1

1 2 3 4 5 6 7

2

4 6 10 12 14 16

3

11 14 17 22 25

4

20 24 30 34

5

31 36 43

6

44 52

7

61

d. Pembagian

Pembagian octal juga dapat dilakukan dengan cara yangsama dengan pembagian decimal.

Contoh dari pembagian bilangan octal adalah :

11: 3 = 3

1204 : 27 = 34

Desimal Oktal

12 / 168 \ 14

12 -

48

48 –

0

14 / 250 \ 16

14 - 14 8 x 1 8 = 14 8

110

110 - 14 8 x 6 8 = 4 8 x 6 8 = 30 8

0 1 8 x 6 8 = 6 8 +

110 8

Modul I dan II Page 32

2.5 Bilangan Hexadesimal

Sistem bilangan Oktal menggunakan 16 macam symbol bilangan berbasis 8 digit

angka, yaitu 0 , 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E dan F. Dimana A = 10, B = 11, C= 12,

D = 13 , E = 14 dan F = 15

Position value system bilangan octal adalah perpangkatan dari nilai 16.

Contoh :

C7(16) = …… (10)

7 x 16 0 = 7

C x 16 1 = 192

199

Jadi 199 (10)

Nilai posisi sistem bilangan hexadecimal merupakan perpangkatan dari nilai 16

seperti pad tabel 2.9.

Tabel 2.9 Posisi Digit dari Bilangan Hexadesimal

Posisi Digit (dari kanan) Position Value

1 160 = 1

2 161 = 16

3 162 = 256

4 163 = 4096

5 164= 65536

……. …….

……. …….

Pada bahasa assembler, bilangan hexadecimal mutlak harus dikuasai. Hal ini karena

berbagai perintah dalam program yang dibuat menggunakan utility “DEBUG” dari “DOS”.

Seperti bilangan biner yang berdasarkan 2 atau bilangan octal yang berdasarkan 8,

bilangan heksadesimal berdasarkan 16, seperti terlihat pada tabel 2.10 yang sesuai dengar arti

heksadesimal sendiri, yaitu heksa = 6 dan decimal = 10.

Tabel 2.10 Konversi Heksadesimal, Desimal dan Biner

Modul I dan II Page 33

Contoh:

a. 3A = (3*161)+(A*16

0) = 58

b. A341 = (10*163)+(3*16

2)+(4*161)+(1*16

0) = 41793

Bilangan heksadesimal dapat konversi bilangan pecahan. Perhatikan contoh berikut :

a. 0, A2 = (10*16-1)+(2*16

-2) = 0.625+0.0078125 = 0.6328125

b. 0,3B2 = (3*16-1)+(11*16

-2) +(2*16

-3) = 0.1875+0.04296875+0.00048828125 =

0.23095703125

Operasi Aritmetika Pada Bilangan Hexadesimal

a. Penjumlahan

Penjumlahan bilangan hexadesimal dapat dilakukan secara sama dengan penjumlahan

bilangan octal, dengan langkah-langkah sebagai berikut :

Langkah-langkah penjumlahan hexadesimal :

- Tambahkan masing-masing kolom secara desimal

- Ubah dari hasil desimal ke hexadesimal

- Tuliskan hasil dari digit paling kanan dari hasil hexadesimal

- Jika hasil penjumlahan tiap-tiap kolom terdiri dari dua digit, maka digit paling

kiri merupakan carry of untuk penjumlahan kolom selanjutnya.

Modul I dan II Page 34

Contoh :

Desimal hexadesimal

2989

1073 +

4062

BAD

431 +

FDE

D 16 + 1 16 = 13 10 + 110 = 14 10 = E 16

A 16 + 3 16 = 10 10 + 3 10 = 13 10 =D 16

B16 + 4 16 = 1110 + 4 10 = 15 10 = F 16

Penjumlahan heksadesimal dapat juga dilakukan dengan bantuan tabel 2.11

Tabel 2.11 Hasil Penjumlahan Digit Heksadesimal

Menggunakan tabel tersebut, penjumlahan bilangan heksadesimal CBA dengan 627 dapat

dilakukan sebagai berikut :

CBA

627 +

12E1

Penjelasan :

A + 7 = 17 karena lebih dari 16, maka 17 mod 16 = 1 carry of 1

Modul I dan II Page 35

B + 2 + 1 = 14 karena kurang dari 16, maka 14 mod 16 = 1 carry of 0, lalu dikonversikan

menjadi E

C + 6 = 18 karena lebih dari 16, maka 18 mod 16 = 2 carry of 1

Pada tabel 2.12, merupakan contoh perhitungan dengan menggunakan tabel yang

tersedia, untuk melakukan perhitungan heksadesimal 64(16) =……. (10). Hasil yang didapat

adalah 100(10).

Tabel 2.12 Tabel Perhitungan Heksadesimal ke Desimal

b. Pengurangan

Pengurangan bilangan hexadesimal dapat dilakukan secara sama dengan pengurangan

bilangan desimal.

Contoh :

Desimal hexadesimal

4833

1575 -

3258

12E1

627 -

CBA

Modul I dan II Page 36

16 10 (pinjam) + 1 10 - 710 = 10 10 = A 16

14 10 - 7 10 - - 1 10 (dipinjam) = 11 10 =B 16

1610 (pinjam) + 2 10 - 610 = 12 10 = C 16

1 10 – 1 10 (dipinjam) 0 10 = 0 16

c. Perkalian

Langkah – langkah :

- Kalikan masing-masing kolom secara desimal

- Ubah dari hasil desimal ke octal

- Tuliskan hasil dari digit paling kanan dari hasil octal

- Jika hasil perkalian tiap kolol terdiri dari 2 digit, maka digit paling kiri

merupakan carry of untuk ditambahkan pada hasil perkalian kolom

selanjutnya.

Contoh :

Desimal Hexadesimal

172

27 x

1204

344 +

4644

AC

1B x

764

C 16 x B 16 =12 10 x 1110= 84 16

A16 x B16 +816 = 1010 x 1110+810=7616

AC

1B x

764

AC

C16 x 116 = 1210 x 110 =1210=C16

A16 x 116 = 1010 x110 =1010=A 16

AC

1B x

764

Modul I dan II Page 37

AC +

1224

616 + C16 = 610 + 1210 = 1810 =12 16

716+A16 +116 = 710 x 1010 + 110=1810 = 1216

d. Pembagian

Contoh :

Desimal hexadesimal

27 / 4646 \ 172

27-

194

189 –

54

54 –

0

1B / 1214 \ AC

10E - 1B16xA16 = 2710x1010=27010= 10E16

144

144- 1B 16 x C16 = 2710 x 10 10 = 3240 10

0 =14416

2.6 Contoh Konversi Sistem Bilangan

Konversi bilangan adalah suatu proses dimana satu system bilangan dengan basis

tertentu akan dijadikan bilangan dengan basis yang berbeda.

• Konversi dari bilangan Desimal

1. Konversi dari bilangan Desimal ke biner

Yaitu dengan cara membagi bilangan desimal dengan dua kemudian diambil sisa

pembagiannya.

Contoh :

45 (10) = …..(2)

45 : 2 = 22 + sisa 1

22 : 2 = 11 + sisa 0

11 : 2 = 5 + sisa 1

5 : 2 = 2 + sisa 1

2 : 2 = 1 + sisa 0 101101(2) ditulis dari bawah ke atas

Modul I dan II Page 38

2. Konversi bilangan Desimal ke Oktal

Yaitu dengan cara membagi bilangan desimal dengan 8 kemudian diambil sisa

pembagiannya

Contoh :

385 ( 10 ) = ….(8)

385 : 8 = 48 + sisa 1

48 : 8 = 6 + sisa 0

601 (8)

3. Konversi bilangan Desimal ke Hexadesimal

Yaitu dengan cara membagi bilangan desimal dengan 16 kemudian diambil sisa

pembagiannya

Contoh :

1583 ( 10 ) = ….(16)

1583 : 16 = 98 + sisa 15

96 : 16 = 6 + sisa 2

62F (16)

• Konversi dari system bilangan Biner

1. Konversi ke Desimal

Yaitu dengan cara mengalikan masing-masing bit dalam bilangan dengan position

valuenya.

Contoh :

1 0 0 1

1 x 2 0 = 1

0 x 2 1 = 0

0 x 2 2 = 0

1 x 2 3 = 8

10 (10)

2. Konversi ke Oktal

Dapat dilakukan dengan mengkonversikan tiap-tiap tiga buah digit biner yang dimulai

dari bagian belakang.

Contoh :

11010100 (2) = ………(8)

11 010 100

Modul I dan II Page 39

3 2 4

diperjelas :

100 = 0 x 2 0 = 0

0 x 2 1 = 0

1 x 2 2 = 4

4

Begitu seterusnya untuk yang lain.

3. Konversi ke Hexademial

Dapat dilakukan dengan mengkonversikan tiap-tiap empat buah digit biner yang

dimulai dari bagian belakang.

Contoh :

11010100

1101 0100

D 4

• Konversi dari system bilangan Oktal

1. Konversi ke Desimal

Yaitu dengan cara mengalikan masing-masing bit dalam bilangan dengan position

valuenya.

Contoh :

12(8) = …… (10)

2 x 8 0 = 2

1 x 8 1 =8

10

Jadi 10 (10)

2. Konversi ke Biner

Dilakukan dengan mengkonversikan masing-masing digit octal ke tiga digit biner.

Contoh :

6502 (8) ….. = (2)

2 = 010

0 = 000

5 = 101

6 = 110

jadi 110101000010

Modul I dan II Page 40

3. Konversi ke Hexadesimal

Dilakukan dengan cara merubah dari bilangan octal menjadi bilangan biner kemudian

dikonversikan ke hexadesimal.

Contoh :

2537 (8) = …..(16)

2537 (8) = 010101011111

010101010000(2) = 55F (16)

Konversi dari bilangan Hexadesimal

1. Konversi ke Desimal

Yaitu dengan cara mengalikan masing-masing bit dalam bilangan dengan position

valuenya.

Contoh :

C7(16) = …… (10)

7 x 16 0 = 7

C x 16 1 = 192

199

Jadi 199 (10)

2. Konversi ke Oktal

Dilakukan dengan cara merubah dari bilangan hexadesimal menjadi biner terlebih

dahulu kemudian dikonversikan ke octal.

Contoh :

55F (16) = …..(8)

55F(16) = 010101011111(2)

010101011111 (2) = 2537 (8)

2.7 Format Data Komputer

2.7.1 Data ASCII

ASCII singkatan ( American Standard Code for Informatioan Interchange)

mewakili karakter alfanumerik dalam memori sistem komputer. Format data yang

digunakan adalah 7 bit dengan bit ke-8 sebagai MSB (Most Significant Bit) yaitu

bit yang paling siginifikan yang digunakan untuk memuat bit parity merupakan bit

tambahan yang disisipkan dalam beberapa sistem.

ASCII merupakan kumpulan kode-kode yang dipergunakan untuk interaksi

antara user dengan komputer dengan menggunakan hardware keyboard sebagai

Modul I dan II Page 41

alat interaksi. ASCII merupakan karakter-karakter khusus yang dapat diinputkan

melalui keyboard seperti angka, haruf, symbol, symbol grafis, dan kode

komunikasi. Kode ASCII merupakan kode angka sebanyak 255 buah, dimana

setiap angka mempunyai karakter khusus. 1 kode ASCII

mewakili/mempunyai/berukuran nilai 1 byte (8 bit).

Gambar 2.6 Tabel ASCII 0 -127

Modul I dan II Page 42

Gambar 2.7 Tabel ASCII 128 – 255

Dalam bidang mikrokomputer ASCII-Code mempunyai arti yang sangat khusus,

yaitu untuk mengkodekan karakter ( Huruf, Angka dan tanda baca yang lainnya ).

Code-code ini merupakan code standard yang dipakai oleh sebagian besar sistem

mikrokomputer. Selain huruf, angka dan tanda baca yang lain ada 32 ( mis ACK,

NAK dsb. ) merupakan kontrol untuk keperluan transportasi data. Di bawah ini adalah

tabel 7 bit ASCII Code beserta beberapa penjelasan yang diperlukan.

Modul I dan II Page 43

Untuk mendapatkan ASCII Code bagi karakter N adalah 100 1110 ( 4E16 )

dengan penjelasan bahwa 100 adalah b7, b6 dan b5 yang lurus keatas terhadap huruf

Modul I dan II Page 44

N dan dan berharga 4 sedangkan 1110 adalah b4, b3, b2 dan b1 yang lurus kesamping

kiri terhadap huruf N dan berharga E.

2.7.2 Bentuk BCD – Binary Code Desimal

Seperti telah diterangkan dalam uraian mengenai sistem bilangan oktal dan

heksadesimal di bagian depan, untuk menyatakan 1 angka desimal diperlukan 4 angka

biner. Tetapi dengan 4 bit sebenarnya dapat dinya-takan 16 macam simbol yang berbeda

sehingga kesepuluh simbol dalam bilangan desimal dapat dinyatakan dengan beberapa

himpunan (set) kode yang berbeda. Perlu dibedakan dengan tegas antara pengkodean dan

konversi. Kalau suatu bilangan dikonversikan ke bilangan lain maka kedua bilangan itu

mempunyai harga/nilai. Sebagai contoh, kalau angka 8 desimal dikonversikan ke biner,

maka satusatunya pilihan adalah 1000. Tetapi kalau angka 8 ini dikodekan ke biner, ada

bermacam-macam kode yang dapat dibentuk, walaupun hanya terdiri atas 4 bit.

Dari bermacam-macam kode untuk angka-angka desimal, kode BCD (singkatan

dari Binary Coded Decimal) merupakan kode yang paling sederhana karena kode itu

sendiri merupakan konversi dari desimal ke biner.Bilangan desimal pada setiap tempat

dapat terdiri dari 10 bilangan yang berbeda-beda. Untuk bilangan biner bentuk dari 10

elemen yang berbeda beda memerlukan 4 bit. Sebuah BCD mempunyai 4 bit biner untuk

setiap tempat bilangan desimal.

Contoh

Z(10) = 317

3 1 7 Desimal

0011 0001 0111 BinerCodeDesimal

Dalam contoh ini BCD terdiri dari 3 kelompok bilangan masing-masing terdiri dari 4

bit , dan jika bilangan desimal tersebut di atas dikonversi ke dalam bilangan biner secara

langsung adalah 317(10) = 100111101(2) dan hanya memerlukan 9 bit. Untuk contoh proses

sebaliknya dapat dilihat di bawah ini.

Contoh

Biner Code Desimal 0101 0001 0111 0000

Desimal 5 1 7 0

Jadi bentuk BCD di atas adalah bilangan Z(10) = 5170.

Modul I dan II Page 45

2.7.3 Bentuk BCO - Biner Code Oktal

Bilangan oktal pada setiap tempat terdiri dari 8 bilangan yang berbeda-beda. Untuk 8

elemen yang berbeda-beda diperlukan 3 bit. Sebuah BCO mempunyai 3 bit biner untuk

setiap tempat bilangan oktal.

Contoh

Z(8) = 634

6 3 4 Bilangan Oktal

110 011 100 Biner Code Oktal

Untuk proses sebaliknya adalah setiap 3 bit dikonversi ke dalam bilangan oktal.

Contoh

Biner Code Oktal 101 100 000 001

Bilangan Oktal 5 4 0 1

Jadi bentuk BCO diatas adalah bilangan Z(8) = 5401.

Modul I dan II Page 46

1.1.9.3. Bentuk BCH - Biner Code Heksadesimal

Bilangan heksadesimal dalam setiap tempat dapat terdiri dari 16 bilangan yang berbeda-

beda ( angka dan huruf ). Bentuk biner untuk 16 elemen memerlukan 4 bit. Sebuah BCH

mempunyai 4 bit biner untuk setiap tempat bilangan heksadesimal.

Contoh

Z(16) = 31AF

BilanganHeksadesimalAFBinerCodeHeksadesimal310011000110101111

Untuk proses sebaliknya, setiap 4 bit dikonversi ke dalam bilangan heksadesimal.

Contoh

BinerCodeHeksadesimalBilanganHeksadesimalA1010011000011000618

Jadi bentuk BCH diatas adalah bilangan Z(16) = A618.

1.1.10. Metoda Balikan

Metoda yang kita gunakan bisa dibalik yaitu dimulai dari bilangan Heksadesimal dirubah

kedalam bentuk BCH ( group digit biner empat-empat ). Buat group ulang ke bentuk BCO

( group digit biner tiga-tiga ) dari titik desimal untuk mengkonversikan ke dalam bilangan

Oktal. Akhirnya bilangan Oktal dapat dikonversikan ke dalam bentuk bilangan desimal

dengan metoda biasa dan dengan cara ini konversi basis bilangan dapat dipermudah.

Contoh 1

Tunjukkan bilangan Heksadesimal 4B2,1A616 ke bentuk bilangan Biner, Oktal dan

Bilangan Desimal yang ekuivalen.

Lakukanlah : a. Tulis ulang 4B2,1A616 dalam bentuk BCH

b. Groupkan ulang kedalam bentuk BCO dari titik Desimal

c. Tunjukkan ekuivalen Oktalnya setiap BCO

d. Akhirnya konversikan bilangan Oktal ke ekuivalen Desimal

Jika ke-4 langkah di atas dilakukan dengan benar akan menghasilkan,

a. 0100 1011 0010 , 0001 1010 01102

b. 010 010 110 010 , 000 110 100 1102

c. 2 2 6 2 , 0 6 4 68

d. 1202,10310

Contoh 2

Selesaikan bilangan Heksadesimal 2E3,4D16 ke bentuk bilangan Biner, Oktal dan

2E3,4D16 = 0010 1110 0011 , 0100 11012

Modul I dan II Page 47

= 001 011 100 011 , 010 011 0102

= 1 3 4 3 , 2 3 28

= 739,30110