Operasi Aritmatika

Post on 13-Jul-2015

152 views 3 download

Transcript of Operasi Aritmatika

TK1013 Sistem Komputer

Operasi Aritmatika

TK1013 Sistem Komputer

Mary : "Kamu sedang apa?"

Thomas : "Saya sedang mengerami telur ayam”

Mary : "Apakah menurutmu telur ayam yang kau erami itu akan menetas?”

Thomas : "Kalau saya belum mencobanya, bagaimana saya bisa tahu ia akan menetas

atau tidak?”

Thomas Alva Edison

Jenius adalah 1% inspirasi dan 99%

keringat

TK1013 Sistem Komputer

Pendahuluan (Resume)

• Pada ALU dikenal ada berapa operasi untuk

proses perhitungan ?

• Apa yang membedakan proses perhitungan

pada bilangan desimal dengan bilangan

binari ?

TK1013 Sistem Komputer

ALU (Arithmetic & Logic Unit )

• Melakukan penghitungan (penjumlahan,

pengurangan, perkalian, dan pembagian dll.)

• Menangani bilangan integer

• Dapat menangani bilangan floating point (real)

• Memiliki FPU (maths co-processor) yang terpisah

untuk operasi matematika yang rumit

• Memiliki FPU (486DX +) yang terpisah dengan

CPU

TK1013 Sistem Komputer

Masukan dan Keluaran ALU

TK1013 Sistem Komputer

Operasi Aritmatika Sistem Bilangan

Sistem Basis Simbol

Operasi aritmatika

Yang Berlaku

Desimal 10 0, 1, … 9 Penjumlahan

Binari 2 0, 1 Pengurangan

Octal 8 0, 1, … 7 Perkalian

Heksa

desimal

16 0, 1, … 9,

A, B, … F

Pembagian

TK1013 Sistem Komputer

Representasi Integer (storage)• Hanya nilai 0 & 1 untuk merepresentasikan

semua data

• Bilangan positif disimpan dalam binari

– Misal : 41=001010012

• Tidak ada tanda negatif

• Tidak ada titik

• Kalau begitu Bagaimana merepresentasikan

bilangan negatif?

– Sign-Magnitude

– Komplemen 2

TK1013 Sistem Komputer

Sign-Magnitude• Bit paling kiri adalah sign bit

• 0 berarti positif

• 1 berarti negatif

• +18 = 000100102

• -18 = 100100102

• Cara ini bermasalah: Cacat !!!!!!!!!!!

– Harus diperhatikan tanda (sign) dan nilai di

aritmatika

– Ada dua nilai yang merepresentasikan nol (+0

dan -0) (aneh??????????)

TK1013 Sistem Komputer

Komplemen 2 (Representasi)

• +3 = 000000112

• +2 = 000000102 Nilai ini tambah 1

• +1 = 000000012

• +0 = 000000002 Tulis nilai positifnya dulu!

• -1 = 111111112 Hasil

• -2 = 111111102

• -3 = 111111012 inversikan (0→1, →0)

Cara : -3 = 000000112 =111111002 = 111111012

TK1013 Sistem Komputer

Keuntungan

• Satu representasi untuk nol

• Perhitungan aritmatika lebih mudah

• Menginversikan lebih mudah (Operasi

komplemen 2)

• Contoh : carilah representasi binari dari

-210 dengan komplemen 2!

+210 000000102

Komplemen 1 dari 2 111111012

Tambah 1 ke LSB 111111102 (-210)

TK1013 Sistem Komputer

Jangkauan Bilangan

• 8 bit Komplemen 2 (signed byte)

– +12710 = 011111112 = 27 -1

– -12810 = 100000002 = -27

• 16 bit Komplemen 2 (signed word)

– +3276710 = 011111111 111111112 = 215 - 1

– -3276810 = 100000000 000000002 = -215

TK1013 Sistem Komputer

Operasi Aritmatika

Bilangan Binari

TK1013 Sistem Komputer

Penjumlahan Binari (1)

TK1013 Sistem Komputer

Penjumlahan Binari (1)

TK1013 Sistem Komputer

Penjumlahan Binari (1)

TK1013 Sistem Komputer

Penjumlahan Binari (2)

Contoh:

0101 10112

0111 00102 +

1100 1101

0011 11002

1010 10102 +

1110 0110

1011 01012

0110 11002 +

10010 0001

1101 10012

0101 10102 +

1001 11012

0111 10112 +011111012

100111102 +

TK1013 Sistem Komputer

Pengurangan Binari (1)

TK1013 Sistem Komputer

Pengurangan Binari (1)

TK1013 Sistem Komputer

Pengurangan Binari (2)

Contoh:

11710 0111 01012

5010 - 0011 00102 -

67 0100 0011

Cara 1: biasa

6110 0011 11012

10010 - 0110 01002 -

- 39 1 1101 1001

1

Pinjam dari angka di kirinya

1

Pinjam /ngutang (Borrow)

Pinjam (Borrow) 0 positif

1 negatif

TK1013 Sistem Komputer

Pengurangan Binari (3)

Contoh: komplemen 2 dari -50

117 0111 01012

50 - 1100 11102 +

67 0100 00112

Cara 2: dengan komplemen 2 -- C = A – B = A + (-B)

61 0011 11012

100 - 1001 11002 +

- 39 1101 10012

komplemen 2 dari -100

Hasil Cara 1 = Cara 2.

Cara 2 lebih mudah dibandingkan Cara 1

TK1013 Sistem Komputer

Perkalian Binari (1)

• Rumit

• Bekerja berdasarkan perkalian parsial untuk

tiap digit

• Hati-hati dalam penempatan nilai(kolom)

• Jumlahkan semua hasil perkalian

sebagaimana penjumlahan biasa

TK1013 Sistem Komputer

Perkalian Binari (2)(kedua bilangan positif (bilangan tak bertanda)

Multiplicand (5 dec)

Multiplier (7 dec)

Hasil parsial

Hasil (35 dec)

• Catatan: membutuhkan tipe data 8 bit!

1 0 1

1 1 1

1 0 1

1 0 1

1 0 1

0 0 0

1 0 0 0 1 1

X

+

1

1

1

TK1013 Sistem Komputer

Pembagian Binari (1)

• Lebih rumit dibandingkan dengan perkalian

• Di sisi hardware sama.

• Berdasarkan kepada pembagian yang panjang

TK1013 Sistem Komputer

001

Pembagian Binari untuk bilangan

Binary Tak Bertanda

102

1100102

011001002

010 -

1010 -

Hasil Bagi

Yang dibagi

Sisa

Pembagi

000 -

0010

00

0010 -

00 -

0

TK1013 Sistem Komputer

Operasi Aritmatika

Oktal

TK1013 Sistem Komputer

Penjumlahan Oktal (1)

08 18 28 48

08+ 58 + 58+ 58+

08 68 78 118

Sum Carry Sum

9

18 1

TK1013 Sistem Komputer

Penjumlahan Oktal (2)

Contoh:

12 8

478 +

618

1

42348

44478 +

107038

11

Carry

4 + 7 = 1110 = 138

3 + 4 + 1 = 810 = 108

2 + 4 + 1 = 710 = 78

4 + 4 = 810 = 108

11

18 3

TK1013 Sistem Komputer

Pengurangan Oktal

Contoh:

43218

12348 -

30658

42318

22318 -

20008

Ada peminjaman

Catatan: pinjam berarti bernilai 8

Tidak Ada peminjaman

1 92 9

TK1013 Sistem Komputer

Perkalian Oktal

24

38 0

TK1013 Sistem Komputer

Perkalian Oktal

TK1013 Sistem Komputer

Perkalian Oktal

13

18 5

TK1013 Sistem Komputer

Perkalian Oktal

43218 Multiplicand

12348 x Multiplier

21504 Hasil parsial

15163

10642

4321 +

56005348

TK1013 Sistem Komputer

Pembagian Oktal

TK1013 Sistem Komputer

Pembagian Oktal

76

17

1642

76 -

662

Hasil Bagi

Yang dibagi

Sisa

Pembagi 8 8

8

8

662 -8

0

8

8

TK1013 Sistem Komputer

Pembagian Oktal

70

17

1560

70 -

660

Hasil Bagi

Yang dibagi

Sisa dibawah pembagi

Pembagian dihentikan

Pembagi 8 8

8

8

610 -8

50

8

8

TK1013 Sistem Komputer

Pembagian Oktal

75

16

1560

75 -

610

Hasil Bagi

Yang dibagiPembagi 8 8

8

8

556 -8

32

8

8 Sisa dibawah pembagi

Pembagian dihentikan

TK1013 Sistem Komputer

Operasi Aritmatika

Heksadesimal

TK1013 Sistem Komputer

Penjumlahan Heksadesimal (1)

016 716 7 A

016+ 716+ 8 16 + 9 +

0 E F 13

Sum Carry Sum

16 16 16 16

1616

16

19

116 3

TK1013 Sistem Komputer

Penjumlahan Heksadesimal (2)

Contoh:

BAD

4 3 1

FDE+

D + 1 = 13 +1 = 1410 = E16

A + 3 = 10 + 3 = 1310 = D16

B + A = 11 + 4 = 1510 = F16

TK1013 Sistem Komputer

Penjumlahan Heksadesimal (3)

Contoh:

18 16

4716 +

5F16

67916

48716 +

B0016

1

Tidak ada Carry

1Carry

9 + 7 = 1610 = 10 16

7 + 8 + 1 = 1610 = 10 16

6 + 4 + 1 = 1110 = B 16

TK1013 Sistem Komputer

Pengurangan Heksadesimal

Contoh:

12E1

627

CBA-

(16 + 1) - 7 = 1010 = A16

(14 – 1) - 2 = 1110 = B16

(16 +2) - 6 = 1210 = C16

E=14, karena sudah dipinjam 1 maka nilainya berkurang 1 menjadi 13

Karena 1 tidak bisa dikurangi 7 maka pinjam angka didepannya 1 digit = 16

TK1013 Sistem Komputer

Pengurangan Heksadesimal (1)

Contoh:

94516

23416 -

71116

F25416

377616 +

BADE16

Tidak ada peminjaman

Catatan: pinjam berarti bernilai 16

Ada peminjaman

4 20

1 20

A B C D E F

10 11 12 13 14 15

14 17

TK1013 Sistem Komputer

Perkalian Heksadesimal

Contoh:

AC

1 B

76 4x

C x B = 1210 x 1110 = 13210 = 8416

A x B + 8 =(10 x 11) + 8 =11810 =7616

132

816 4

A B C D E F

10 11 12 13 14 15

TK1013 Sistem Komputer

Perkalian Heksadesimal

Contoh:

AC

1 B

76 4

AC

x

C x 1 = 1210 x 110 = 1210 = C16

A x 1 =10 x 1 =1010 =A16

A B C D E F

10 11 12 13 14 15

TK1013 Sistem Komputer

Perkalian Heksadesimal

Contoh:

AC

1 B

76 4

AC

1224

x

6 + C = 610 + 1210 = 1810 = 1216

7 + A + 1 = 7 + 10 + 1 =1810 =1216

x

A B C D E F

10 11 12 13 14 15

TK1013 Sistem Komputer

Perkalian Heksadesimal

432116 Multiplicand

123416 x Multiplier

10C84 Hasil parsial

C963

8642

4321 +

4C5F4B4 16

A B C D E F

10 11 12 13 14 15

TK1013 Sistem Komputer

Pembagian Heksadesimal (1)

1224 161B16

AC16

10E16

1441614416

016

1B

A

10Ex

A x B =10 x 11 = 110

110 : 16 = 6 sisa 14 = E

A x 1 = 10 x 1 =10 + 6 =16

16 : 16 = 1 sisa 0

C x B =12 x 11 = 132

132 : 16 = 8 sisa 4

C x 1 = 12 + 8 = 20

20 : 16 = 1 sisa 4

1B

C

144x

122

10E

14-

1 18

A B C D E F

10 11 12 13 14 15

2

3

1

4

TK1013 Sistem Komputer

Pembagian Heksadesimal (2)

919 161116

8916

8816

99169916

016

Hasil Bagi

Yang dibagi

Sisa

Pembagi

TK1013 Sistem Komputer

Pembagian Heksadesimal (3)

Hasil Bagi

Yang dibagi

Sisa

Pembagi F52163516

4A16

D416

2121621216

016

TK1013 Sistem Komputer