rancangan arsitektur mikro prosesor

21
SISTEM BILANGAN 1. Sistem Bilangan Biner. Sistem bilangan yang paling kita kenal adalah sistem bilangan desimal. Selain sistem bilangan desimal terdapat bermacam-macam sistem bilangan, salah satunya ada-lah sistem bilangan biner. Masing-masing sistem bilangan tersebut dibatasi oleh basis yaitu banyaknya angka atau digit yang digunakan. Sistem bilangan desimal mempunyai basis = 10 karena sistem bilangan desimal mempunyai 10 digit yaitu dari 0 sampai dengan 9. Arti biner adalah dua. Sistem bilangan biner hanya menggunakan dua digit, yaitu 0 dan 1. Seluruh digit yang lain (2 sampai 9) tidak dipergunakan. Dengan perkataan lain, bilangan-bilangan biner merupa-kan string dari 0 dan 1. Bobot dari suatu bilangan tergantung kepada basis-nya dan susunan bilangan ter-sebut. Misalnya untuk bilangan desimal 278,94 mempunyai bobot : (2x10 2 )+(7x10 1 )+(8x10 0 )+(9x10 -1 ) +(4x10 -2 ) = 200 + 70 + 8 + 0,9 + 0,04 = (278,94) 10 Dari penulisan di atas kita dapat melihat bahwa 2 mewakili harga ratusan (10 2 ), 7 mewakili harga puluhan (10 1 ), 8 mewakili harga satuan (10 0 ), 9 mewakili harga

description

mikro prosesor

Transcript of rancangan arsitektur mikro prosesor

Page 1: rancangan arsitektur mikro prosesor

SISTEM BILANGAN

1. Sistem Bilangan Biner.

Sistem bilangan yang paling kita kenal adalah sistem bilangan desimal. Selain

sistem bilangan desimal terdapat bermacam-macam sistem bilangan, salah satunya

ada-lah sistem bilangan biner. Masing-masing sistem bilangan tersebut dibatasi oleh

basis yaitu banyaknya angka atau digit yang digunakan.

Sistem bilangan desimal mempunyai basis = 10 karena sistem bilangan

desimal mempunyai 10 digit yaitu dari 0 sampai dengan 9. Arti biner adalah dua.

Sistem bilangan biner hanya menggunakan dua digit, yaitu 0 dan 1. Seluruh digit yang

lain (2 sampai 9) tidak dipergunakan. Dengan perkataan lain, bilangan-bilangan biner

merupa-kan string dari 0 dan 1.

Bobot dari suatu bilangan tergantung kepada basis-nya dan susunan bilangan

ter-sebut. Misalnya untuk bilangan desimal 278,94 mempunyai bobot :

(2x102)+(7x101)+(8x100)+(9x10-1) +(4x10-2) = 200 + 70 + 8 + 0,9 + 0,04 = (278,94)10

Dari penulisan di atas kita dapat melihat bahwa 2 mewakili harga ratusan

(102), 7 mewakili harga puluhan (101), 8 mewakili harga satuan (100), 9 mewakili

harga perse-puluhan (10-1), dan 4 mewakili harga perseratusan (10-2).

Demikian pula halnya dengan bobot bilangan untuk bilangan biner, cara per-

hitungannya persis sama, cuma angka 10 diganti dengan angka 2. Contoh untuk

bilangan 1101,101:

(1x23) + (1x22) + (0x21) + (1 x2 0) + ( 1x 2-1) + ( 0x2-2) + ( 1x2-3) = 8+ 4 + 0 + 1 + 0,5

+ 0,125 = ( 13,625)10

Contoh 2 10111,011= 23,375

Dari perhitungan dapat dilihat bahwa digit yang paling kanan mempunyai nilai

yang terkecil, sedang digit yang paling kiri mempunyai nilai yang terbesar.

Digit yang mempunyai nilai yang terkecil disebut LSB (Least Significant Bit)

dan digit yang mempunyai nilai yang terbesar disebut MSB (Most Significant Bit).

Page 2: rancangan arsitektur mikro prosesor

1.2. Berhitung Biner.

Sebagaimana halnya dengan bilangan desimal, yang dapat dilakukan di

dalamnya berbagai operasi komputasi (perhitungan), maka pada bilangan-bilangan

biner dapat pula dikerjakan operasi-operasi penjumlahan, pengurangan, perkalian dan

pembagian.

1.2.1. Penjumlahan Biner.

Penjumlahan bilangan biner sama saja caranya dengan penjumlahan bilangan

desi-mal. Aturan yang digunakan untuk penjumlahan adalah :

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 0 ,

dengan pindahan 1 pada bit biner sebelah kirinya.

Contoh :

1). 1 0 0 1 (9) 2). 0 1 1 1 (7)

1 1 1 0 (14) 1 0 1 0 (10)--------------- + ----------------------------. +

1 0 1 1 1 (23) 10 0 0 1 (17)

1.2.2. Pengurangan Biner

Pengurangan bilangan biner dapat dilakukan dengan cara yang sama seperti

pengurangan bilangan desimal, yaitu sebagai kebalikan dari penjumlahan. Tiap-

tiap bit dari pengurang (subtrakenol) mengurangi bit yang berpadanan dengan

bilangan yang dikurangi (minunol). Jika angka diminunol lebih kecil dari angka

pengurang, maka dipinjam satu (1) dari lajur berikutnya sebelah kiri. Meminjam

kebalikan dari pindahan . Cara pengurangan demikian ternyata tidak cocok

untuk diwujudkan secara elektronik, karena akan membuat rangkaian menjadi

Page 3: rancangan arsitektur mikro prosesor

rumit. Hal ini disebabkan karena tidak ada konsep logika -1. Sehingga perlu

dicari cara untuk mempresentasikan bilangan-bilangan negatif. Untuk

mengatasai cara ini, maka dipakai metoda " mengkomplemen dan menjumlah".

Komplemen dari suatu bilangan biner diperoleh dengan cara membalik tiap-tiap

bit dari bilangan tersebut.

Komplemen dari subtrakenol dijumlahkan dengan minunol dan hasil pindahan

dari jumlah bit yang bobotnya paling besar (MSB) dicatat. Jika hasilnya adalah

1, berarti bahwa hasil pengurangan adalah bilangan positif. Untuk mendapatkan

hasil akhirnya, maka harus dilakukan "pemindahan memutar ke ujung" (lend

around car-ry) dan bit yang paling kecil bobotnya (LSB) harus ditambahkan

dengan bit pin-dahan tersebut. Bila bit pindahannya adalah 0, maka dapat

disimpulkan:

a. Hasil pengurangan adalah negatif.

b. Hasil pengurangan merupakan komplemen dari jawaban akhir karena itu

untuk mendapatkan hasil akhir yang benar, maka hasil penjumlahan tersebut

harus dikomplemenkan.

Contoh:

1). 1001 (9) - 0100 (4) 2). 0111 (7) - 1101(13)

1001 (9) 0111 (7)

1011 (komplemen-1 dari 4) 0010(komplemen dari 13

------------ + --------- +

1 0100 (jumlah) 01001jumlah)

1 (pindahan memutar ke ujung) 0110 (komplemen-1=hasilnya)

-------+ menunjukkan hasilnya bil.negatif -6menanda- 0101 (Hasilnya +5) kan hasilnya bil.positif

1100 7 0111 komp-1 1000 ----- 1 0100

Page 4: rancangan arsitektur mikro prosesor

1 0101 5

Bila menggunakan metode ini ada dua hal yang harus diperhatikan :

1. Kedua bilangan harus dituliskan dalam jumlah bit yang sama, misalnya bila

suatu bilangan yang terdiri dari 5 bit (10011) dikurangi dengan bilangan yang

terdiri dari 3 bit (101), maka bilangan tersebut harus dituliskan dahulu dalam

5 bit yaitu 00101 dan bila dikomplemenkan akan menjadi 11010.

2. Perlu diperhatikan jumalh bit yang digunakan dalam perhitungan

sehinggaakan menjadi jelas mana bit yang merupakan hasil pindahan yang

akan menentukan tanda bilangan. Bila perhitungan menggunakan 5 bit, maka

bit yang ke-6 meru-pakan pindahan, jadi bukan bit yang paling besar

bobotnya. Bit tersebut hanya merupakan tanda positif atau negatif dari

bilangan hasil pengurangan yang juga akan menentukan.

Contoh :

111 (7) - 10110 (22)00111 (7)01001 (komplemen dari 22)-------- +10000 (jumlah)01111 (komplemen = hasilnya - 15)

1.2.3. Perkalian Biner

Cara untuk mengalikan bilangan biner seperti pada perkalian bilangan desimal.

Contoh : 1100 (12) x 1011 (4) ------------------> 11001011-------x1100

11000000

1100------------

10000100 (Hasil = 132)

Page 5: rancangan arsitektur mikro prosesor

1.2.4. Pembagian Bilangan

Biner

Caranya sama saja dengan pembagian pada bilangan desimal.

Contoh : 1010 (10) : 100 (4) = 10,1 (2,5) 10,1

100 1010

---100100---- - 0

1.3. Konversi Bilangan dari Satu Radiks ke Radiks Lainnya.

1.3.1. Mengubah Bilangan

Desimal Menjadi Bilangan Biner.

Caranya dapat dilihat pada bahagian sebelumnya.

1.3.2. Mengubah Bilangan

desimal menjadi Bilangan Oktal.

Caranya sama dengan untuk proses konversi bilangan biner hanya pembaginya

yang berbeda yaitu 8.

Contoh : Carilah Bilangan Oktal dari (872)10

872 : 8 = 109 sisa 0 (LSB)

109 : 8 = 13 sisa 5

13 : 8 = 1 sisa 5

1 : 8 = 0 sisa 1 (MSB)

Page 6: rancangan arsitektur mikro prosesor

Hasilnya : (872)10 = (1550)8

1.8*3+5.8*2+5.8*1+0.8*0

512+320+40+0=872

1.3.3. Mengubah Bilangan Desimal Menjadi Bilangan Hexadesimal.

Caranya adalah sama dengan mengubah ke bilangan biner hanya pembaginya =

16.

Contoh : Carilah bilangan hexadesimal dari (8754)10

8764 : 16 = 547 sisa 12 (LSB) 0-15 10 A, 11 B, 12 C

547 : 16 = 34 sisa 3

34 : 16 = 2 sisa 2

2 : 16 = 0 sisa 2 (MSB)

Hasilnya : (8754)10 = (223C)16

1.3.4. Mengubah Bilangan Biner Menjadi Bilangan Oktal.

Untuk mengubah bilangan biner menjadi bilangan oktal yaitu dengan menge-

lompokkan bit-bit bilangan biner tersebut yang terdiri dari 3 bit dimulai dari LSB

masing-masing kelompok tersebut. Kemudian dibaca bobot bilangannya atau nilai

desi-malnya. Susunan bobot-bobot bilangan tersebut sudah merupakan bilangan

oktalnya.

Contoh : Hitunglah nilai oktal dari (101110111)2

101 / 110 / 111 = 101 110 111

5 6 7

Hasilnya : (101110111)2 = (567)8

Page 7: rancangan arsitektur mikro prosesor

1.3.5. Mengubah Bilangan

Oktal Menjadi Bilangan Biner.

Cara mengubah bilangan oktal menjadi bilangan biner yaitu masing-masing

digit bilangan oktal tersebut diubah langsung menjadi bilangan biner yang terdiri dari

3 bit. Kemudian kelompok bit tersebut disusun sesuai dengan urutan semula.

Contoh : Ubahlah (251)8 menjadi bilangan biner.

( 2 5 1 )8 = ( 010 101 001)2

010 101 001

1.3.6. Mengubah Bilangan Biner Menjadi Bilangan Hexadesimal.

Cara mengubah bilangan biner menjadi bilangan hexadesimal yaitu dengan cara

mengelompokkan bilangan biner tersebut menjadi kelompok yang terdiri dari 4 bit

dimulai dari LSB. Susunan dari bobot bilangan masing-masing kelompok tersebut

adalah bilangan hexadesimal yang dicari.

Contoh : Ubahlah ( 110101101011)2 menjadi bilangan hexadesimal.

1101 / 0110 / 1011 = ( D6B )16

13=D 6 B

1.3.7. Mengubah Bilangan Hexadesimal Menjadi Bilangan Biner.

Cara untuk mengubah bilangan hexadesimal menjadi bilangan biner yaitu

masing-masing digit bilangan hexadesimal tersebut diubah langsung menjadi bilangan

biner yang terdiri dari 4 bit kemudian kelompok bit tersebut disusun sesuai dengan

urutan semula.

Contoh : Ubahlah (251)16 menjadi bilangan biner .

( 2 5 1 )16 = (1001010001)2

0010 0101 0001

1.3.8. Bilangan Pecahan.

Page 8: rancangan arsitektur mikro prosesor

Rumus bobot bilangan untuk bilangan pecahan :

d-1r -1 + d -2 r -2

+ ...............+ d -n r -n

Sehingga rumus umum untuk suatu bilangan utuh dan pecahan adalah :

N(r) = dnrn + dn-1 rn-1 + .........+ d1r1 + d0 r0 + d -1r-1 + d-2 r-2 + ........+ d-n r-n

dimana : n = menunjukkan digit yang ke berapa dihitung dari do

d = digit yang digunakan r = radiks dari bilanganContoh :

( 25,1 )8 = ( 2x 81 ) + ( 5 x 80 ) + ( 1x 8-1 ) = 16 + 5 + 1/8 = ( 21,125 )10

( 10,11 )2 = ( 1 x21 ) + (1 x 2-1 ) + ( 1x2-2 ) = 2 + 0,5 + 0,25 = ( 2,75 )10

Untuk mengubah bilangan desimal yang mengandung pecahan menjadi bilangan

radiks lain, maka masing-masing bagian yang utuh dan yang pecahan dikerjakan

sendiri-sendiri. Bilangan yang utuh iubah dengan cara pembagian sesuai dengan

radiksnya terus-menerus sampai habis. Sedangkan bilangan pecahan diubah dengan

cara mengalikan berturut-turut dengan radiks baru yang dikehendaki.

Tiap-tiap hasil perkalian yang utuh (bukan pecahan) akan menjadi digit-digit pecahan

bilangan baru tersebut.

32 16 8 4 2 1

Contoh : Ubahlah ( 20,11 )10 menjadi bilangan biner.

Bagian yang utuh Bagian pecahan

20 : 2 = 10 sisa 0 (LSB) 0,11 x 2 = 0,22 0

10 : 2 = 5 sisa 0 0,22 x 2 = 0,44 0

5 : 2 = 2 sisa 1 0,44 x 2 = 0,88 0

2 : 2 = 1 sisa 0 0,88 x 2 = 1,76 11

1 : 2 = 1 sisa 1 (MSB) 0,76 x 2 = 1,52 1

( 20 )10 = ( 10100 )2 0,52 x 2 = 1,04 1

0,04 x 2 = 0,08 0

( 0,11 )10 = ( 0,000111 )2

Page 9: rancangan arsitektur mikro prosesor

10/3

Hasilnya : ( 20,11 )10 = ( 10100,000111)2

1.4. Komplemen-2

Komplemen-2 dari suatu bilangan biner diperoleh dengan menambahkan 1

pada komplemen-1.

Komplemen-2 = Komplemen-1 + 1

Contoh :

Komplemen-2 dari 1011 adalah ...........

Solusi : Komplemen-1 dari 1011 -------> 0100

0100

1------- +0101 (dalam bentuk komplemen-2)

Pengurangan Komplemen-2

Cara mengurangi suatu bilangan biner dengan menggunakan komplemen-

2 yaitu pengurangnya diubah dahulu ke bentuk komplemen-2 kemudian dijumlahkan

dengan bilangan yang dikurangi. Jika ada pindahan (carry) pada bit MSB-nya, maka

pindahan tersebut dibaikan dan hasilnya berupa bilangan positif.

Contoh: 7 - 5 = .......

111 (7) 111 (7)

101 (5) _ 011 + (komplemen 2 dari 5) 1010

Hasilnya adalah 010 (= + 2)

carry digit-1 diabaikan

27 - 20 = ........

11011 (27) 11011 (27)

10100 (20) _ 01100 + (komplemen-2 dari 20)

1 00111

Page 10: rancangan arsitektur mikro prosesor

diabaikan Hasilnya : 00111 ( + 7 )

Jika tidak ada pindahan pada bit MSB-nya berarti hasilnya negatif dan

berada dalam bentuk komplemen-2.

Contoh : 5 - 7 = ...........101 (5) 101 (5)111 (7) _ 001 + ( komplemen-2 dari 7)

110 (berada dalam bentuk kompl-2)

Hasilnya : komplemen-2 = komplemen-1 + 1 110 = 101 + 001

dikomplemenkan menjadi = 010 ( = - 2)

1.5. Bilangan BCD ( Binary Coded Desimal)

Sistem bilangan BCD menggunakan kode biner 4 bit untuk

merepresentasikan bilangan desimal 0 sampai 9. Bilangan yang lebih besar dari

bilang-an ini dinyatakan dengan 2 atau lebih kelompok bilangan biner 4 bit.

Contoh : 28 ditulis 0010 1000 yang ekivalen dengan (0010 x 101 ) + (1000 x 100 )

Nibble adalah string dari 4 bit. Bilangan BCD (Binary-coded-desimal)

mengungkapkan setiap digit desimal sebagai sebuah nibble. Sebagai contoh : 2.945

dapat diubah menjadi bilangan BCD sebagai berikut :

2 9 4 5

0010 1001 0100 0101

Sebagaimana yang kita lihat, setiap digit desimal dikodekan dengan sebuah nibble.

Pada penjumlahan bilangan BCD yang hasilnya lebih besar dari 9 ( 1001 )

maka harus dilakukan pindahan ke kelompok berikutnya.

Contoh : 25 + 18 = 43

0010 0101 (25)0001 1000 + (18)0011 1101 1 + 1010 _0100 1101

Page 11: rancangan arsitektur mikro prosesor

0101 +

1 0010 1 +

0011

4 3

Contoh soal.

1.)      Bilangan biner adalah bilangan yang berbasis ……………..

a.       Bilangan yang berbasis 2 yaitu 1 dan 2

b.           Bilangan yang berbasis 2 yaitu 0 dan 1

c.       Bilangan yang berbasis 10 yaitu 0 – 9

d.      Bilangan yang berbasis 8 yaitu 0 – 7

e.       Bilangan yang berbasis 16 yaitu 0 – 15

2.)     Bilangan heksadesimal adalah bilangan yang berbasis …………..

a.       Bilangan yang berbasis 2 yaitu 0 dan 1

b.      Bilangan yang berbasis 16 yaitu 0 dan 17

c.       Bilangan yang berbasis 10 yaitu 0 – 9

d.      Bilangan yang berbasis 8 yaitu 0 – 7

e.             Bilangan yang berbasis 16 yaitu 0 – 15

3.)      Bilangan Desimal adalah bilangan yang berbasis..................

a.       Bilangan yang berbasis 10 yaitu 0 dan 10

b.      Bilangan yang berbasis 2 yaitu 0 dan 1

c.             Bilangan yang berbasis 10 yaitu 0 – 9

d.      Bilangan yang berbasis 8 yaitu 0 – 7

e.       Bilangan yang berbasis 16 yaitu 0 – 15

4.)      Bilangan oktal adalah bilangan yang berbasis........

a.       Bilangan yang berbasis 8 yaitu 0 dan 8

Page 12: rancangan arsitektur mikro prosesor

b.      Bilangan yang berbasis 2 yaitu 0 dan 1

c.       Bilangan yang berbasis 10 yaitu 0 – 9

d.           Bilangan yang berbasis 8 yaitu 0 – 7

e.       Bilangan yang berbasis 16 yaitu 0 – 15

5.) 67(10) dikonversikan ke sistem biner mempunyai nilai .............

a.       0111100

b.      1100011

c.       1000001

d.      1000011

e.             1000111

6.) 253 (10) dikonversikan ke sistem biner mempunyai nilai .............

a.       11111001

b.      11111100

c.       11111000

d.      11110001

e.             11111101

7.) 52(10) dikonversikan ke sistem biner mempunyai nilai .............

a.       110000

b.      101000

c.             110100

d.      110110

e.       110000

Page 13: rancangan arsitektur mikro prosesor

8.) 001111 merupakan bilangan Biner, jika dikonversikan menjadi bilangan desimal

mempunyai nilai.................

a.             15

b.      14

c.       13

d.      16

e.       17

9.) 010110 merupakan bilangan biner , jika dikonversikan menjadi bilangan desimal

mempunyai nilai.................

a.             22

b.      20

c.       6

d.      23

e.       32

10.)  101101 merupakan bilangan biner , jika dikonversikan menjadi bilangan desimal

mempunyai nilai.................

a.       54

b.      32

c.             45

d.      23

e.       46

11.)  5819( 10 ) bilangan desimal dikonversikan menjadi oktal mempunyai nilai.......

a.       13373

b.      13273

c.             12373

d.      12337

e.       13237

12.)  210( 8) bilangan oktal dikonversikan menjadi biner mempunyai nilai.......

Page 14: rancangan arsitektur mikro prosesor

a.       011 001 000

b.      001 010 000

c.             010 001 0

d.      001 010 0

e.       010 001 000

13.)  6543( 8) bilangan oktal dikonversikan menjadi biner mempunyai nilai.......

a.       110 101 100 011

b.      110 100 101 011

c.       111 100 101 011

d.           111 101 100 011

e.       111 101 100 001

14.)  27( 8) bilangan oktal dikonversikan menjadi biner mempunyai nilai.......

a.             011 111

b.      001 110

c.       010 110

d.      010 111

e.       000 111

15.)  11001101 merupakan bilangan biner , jika dikonversikan menjadi bilangan oktal

mempunyai nilai.................

a.       215

b.      115

c.       315

d.      135

e.             134

16.) Hasil konversi bilangan biner 01110001 ke dalam bilangan desimal adalah ……

a.       170 d. 113b.      185 e. 256c.       196

Page 15: rancangan arsitektur mikro prosesor

17.) Hasil konversi angka 25 yang merupakan bilangan desimal ke dalam bilangan ber basis biner adalah …..

a.       1011111 d. 00011001 b.      01111101 e. 01111011c.       11100001

18.) Hasil konversi angka 125 yang merupakan bilangan desimal ke dalam bilangan ber basis biner adalah …..

a.       10001110 c. 01100110b.      01111101 d. 01111111c.       10101010

19.) Hasil konversi bilangan biner 10111001 ke dalam bilangan desimal adalah …… 1,8,16,32,128

a.       87 d. 50b.           185 e. 164c.       196

20.) Hasil konversi angka 255 yang merupakan bilangan desimal ke dalam bilangan ber basis biner adalah …..

a.             010111111 d. 11111111b.      01111101 e. 01111011c.       00011101