Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
Representasi Bilangan dan Operasi Aritmatika Kuliah#8 TSK205 Sistem Digital - TA 2011/2012
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Eko Didik Widianto Teknik Sistem Komputer - Universitas Diponegoro
Review Kuliah
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda)
I
I
Sebelumnya telah dibahas tentang sintesis rangkaian logika dan teknologi implementasi menggunakan CMOS. Dalam rangkaian logika, diimplementasikan variabel-variabel (masukan dan keluaran) yang menyatakan suatu keadaan switch atau kondisi atau sistem Selanjutnya akan dibahas tentang representasi nilai digital untuk variabel sistem digital/komputer ini
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Tentang Kuliah
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda)
I
Representasi posisional: bilangan unsigned, desimal, biner, oktal dan hexadesimal
I
Konversi bilangan
I
Bilangan bertanda: sign-magnitude, 1´s complement, 2´s complement
I
Operasi penjumlahan dan pengurangan
I
Overflow aritmatika
I
Bilangan fixed-point, floating-point, BCD dan ASCII
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Kompetensi Dasar
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected])
I
Setelah mempelajari bab ini, mahasiswa akan mampu: 1. [C2] Mahasiswa akan mampu menuliskan sistem bilangan digital, dalam bentuk bilangan positional, bertanda (signed) dan tak bertanda (unsigned) dengan tepat 2. [C2] Mahasiswa akan mampu menuliskan bilangan pecahan dalam bentuk fixed-point dan floating-point dengan tepat 3. [C2] Mahasiswa akan mampu merepresentasikan informasi/bilangan digital ke dalam kode BCD (binary-coded decimal) maupun ASCII dengan tepat 4. [C3,C4] Mahasiswa akan mampu melakukan operasi penjumlahan dan pengurangan dengan tepat menggunakan sistem bilangan 2´s complement dan mampu menganalisis kondisi overflow aritmatika
I
Link I
Website: http://didik.blog.undip.ac.id/2012/02/24/
kuliah-sistem-digital-tsk-205-2011/
I
Email:
[email protected]
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Bahasan
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected])
Representasi Posisional
Representasi Posisional Bilangan Signed (Bertanda)
Bilangan Signed (Bertanda)
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point
Operasi Penjumlahan dan Pengurangan
Representasi Lainnya Lisensi
Bilangan Fixed-Point dan Floating-Point
Representasi Lainnya
Lisensi
Bilangan Integer dan Desimal I
Dua tipe bilangan 1. Tak bertanda (unsigned): bilangan yang hanya memuat nilai positif 2. Bertanda (signed): bilangan yang memuat nilai positif dan negatif
I
Sistem desimal, unsigned integer I I
I
I
I
bilangan memuat digit yang mempunyai nilai 0-9 Bilangan desimal n-digit dapat dinyatakan sebagai D = dn−1 dn−2 · · · d1 d0 Bilangan D tersebut mewakili nilai integer V (D) = dn−1 ×10n−1 +dn−2 ×10n−2 +· · ·+d1 ×101 +d0 ×100 Misalnya: 8547 mewakili 8 × 103 + 5 × 102 + 4 × 101 + 7 × 100 Representasi bilangan tersebut disebut representasi posisional
Bilangan desimal disebut bilangan radix-10 atau base-10, karena digitnya mempunayi 10 nilai yang mungkin dan tiap digit berbobot pangkat 10
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Representasi Bilangan dan Operasi Aritmatika
Bilangan Biner
@2012,Eko Didik Widianto (
[email protected])
I
I I
I
Representasi Posisional
Dalam sistem digital, digunakan bilangan biner atau base-2
Bilangan Signed (Bertanda)
Tiap digit (bit, binary digit) mempunyai nilai 0 atau 1 Sebuah variabel mewakili satu bit
Operasi Penjumlahan dan Pengurangan
Representasi posisional bilangan biner n-digit:
Bilangan Fixed-Point dan Floating-Point
B = bn−1 bn−2 · · · b1 b0 I
Bilangan B tersebut mewakili nilai integer V(B) V (B) =
bn−1 × 2n−1 + bn−2 × 2n−2 + · · · + b1 × 21 + b0 × 20
Representasi Lainnya
=
n−1 P
bi ×
i=0 I
I
Misalnya: (1101)2 = 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 = (13)10
Bilangan n-bit mewakili bilangan integer positif dari 0 . . . 2n − 1
2i
Lisensi
Representasi Bilangan dan Operasi Aritmatika
Bilangan Oktal dan Hexadesimal
@2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Representasi posisional dapat digunakan untuk sebarang radix I
I
I
n−1 P
Representasi Lainnya
i=0
Lisensi
ki × ri
Bilangan dengan radix 8 disebut oktal I
Digit bernilai dari 0 . . . 7
Bilangan dengan radix 16 disebut hexadesimal (hex) I
Digit bernilai dari 0 . . . 9 dan A . . . F
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point
Untuk radix r, maka untuk bilangan K = kn−1 kn−2 · · · k1 k0 mempunyai nilai integer
Bilangan Signed (Bertanda)
Representasi Bilangan dan Nilai Ekivalennya
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda)
Desimal
Biner
Oktal
Hexa
Desimal
Biner
Oktal
Hexa
0
0000
0
0
8
1000
10
8
1
0001
1
1
9
1001
11
9
Bilangan Fixed-Point dan Floating-Point
2
0010
2
2
10
1010
12
A
Representasi Lainnya
3
0011
3
3
11
1011
13
B
Lisensi
4
0100
4
4
12
1100
14
C
5
0101
5
5
13
1101
15
D
6
0110
6
6
14
1110
16
E
7
0111
7
7
15
1111
17
F
Operasi Penjumlahan dan Pengurangan
Representasi Bilangan dan Operasi Aritmatika
Konversi Bilangan I Konversi bilangan biner ke desimal atau sebaliknya I
Representasi Posisional
Biner ke desimal V (B)
= =
bn−1 × 2n−1 + bn−2 × 2n−2 + · · · + b1 × 21 + b0 × 20 n−1 X
@2012,Eko Didik Widianto (
[email protected])
i
bi × 2
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point
i=0
Representasi Lainnya
Misalnya: (11101011)2
I
Lisensi
=
27 + 26 + 25 + 23 + 21 + 20
=
(235)10 = 235
Desimal ke biner I
I
I
Bagi bilangan desimal D dengan 2, memberikan hasil bagi (quotient) dan sisa. Sisa nilainya 0 atau 1. Sisa akan menjadi LSB Bagi quotient dengan 2, memberikan hasil bagi dan sisa. Ulangi pembagian quotient sampai quotient=0 Untuk setiap pembagian, sisa akan merepresentasikan satu bit bilangan binernya
Contoh Desimal ke Biner
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Representasi Bilangan dan Operasi Aritmatika
Konversi Biner-Oktal-Hexadesimal
@2012,Eko Didik Widianto (
[email protected])
I
Representasi Posisional
Biner - Oktal I I
I
1 digit oktal merupakan grup 3 digit biner Biner 001 000 Konversi biner - oktal: Oktal 1 0 Oktal 2 3 Konversi oktal - biner: Biner 010 011
Bilangan Signed (Bertanda)
110 6 6 110
100 4 7 111
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
I
Biner - Hexadesimal I I
I
1 digit hexa merupakan grup 4 digit biner Konversi biner - hexa: Biner 1111 0000 0110 0100 Hexa F 0 6 4 Konversi hexa - biner: Hexa 2 A C 7 Biner 0010 1010 1100 0111
Bilangan Signed
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected])
I
Dalam sistem biner, representasi bilangan signed berisi: tanda (sign) dan besar nilai (magnitude) I
I
Tanda diyatakan oleh bit paling kiri (0: bilangan positif, 1: bilangan negatif)
Bilangan n-bit: 1 bit paling kiri menyatakan tanda, n-1 bit berikutnya menunjukan besar nilai bilangan
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Representasi Bilangan dan Operasi Aritmatika
Bilangan Sign-Magnitude
@2012,Eko Didik Widianto (
[email protected])
I
Representasi Posisional
Di bilangan signed, terdapat 3 format yang umum digunakan untuk representasi bilangan negatif
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan
1. Sign-Magnitude 2. 1’s Complement 3. 2’s Complement
Bilangan Fixed-Point dan Floating-Point Representasi Lainnya
I
I
Bilangan sign-magnitude menggunakan 1 bit paling kiri untuk menyatakan tanda (0: positif, 1: negatif) dan bit sisanya menyatakan magnitude (besar nilai bilangan). Bilangan 4-bit:
Lisensi
0
1
2
3
4
5
6
7
Positif
0000
0001
0010
0011
0100
0101
0110
0111
Negatif
1000
1001
1010
1011
1100
1101
1110
1111
Walaupun ini mudah dipahami, tapi ini tidak cocok digunakan di sistem komputer (dibahas di Operasi Bilangan)
Representasi Bilangan dan Operasi Aritmatika
Bilangan 1’s Complement
@2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
I
I I
Skema 1’s Complement: Bilangan n-bit negatif K dapat diperoleh dari mengurangkan 2n − 1 dengan bilangan positif ekivalennya P K = (2n − 1) − P Misalnya untuk bilangan 4-bit (n=4): K = (24 − 1) − P = 15 − P = (1111)2 − P
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya
0
1
2
3
4
5
6
7
Positif
0000
0001
0010
0011
0100
0101
0110
0111
Negatif
1111
1110
1101
1100
1011
1010
1001
1000
Terlihat bahwa 1’s complement dapat dibentuk dengan mengkomplemenkan tiap bit bilangan, termasuk bit tanda Masih ada kekurangan dari penggunaan 1’s complement (dibahas di Operasi Bilangan)
Lisensi
Representasi Bilangan dan Operasi Aritmatika
Bilangan 2’s Complement
@2012,Eko Didik Widianto (
[email protected])
I
I
Skema 2’s Complement: Bilangan n-bit negatif K dapat diperoleh dari mengurangkan 2n dengan bilangan positif ekivalennya P K = 2n − P Misalnya untuk bilangan 4-bit (n=4): K = 24 − P = 16 − P = (10000)2 − P
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya
0
1
2
3
4
5
6
7
8
-
Positif
0000 0001 0010 0011 0100 0101 0110 0111
Negatif
0000 1111 1110 1101 1100 1011 1010 1001 1000
I
Terlihat bahwa 2’s complement dapat dibentuk dengan mengkomplemenkan tiap bit bilangan dan menambahkan 1 I
I
(2’s complement) = (1’s complement) + 1
Bilangan signed 2’s complement ini yang sering digunakan dalam sistem komputer
Lisensi
Aturan Mencari 2’s Complement
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected])
I
Jika diberikan satu bilangan signed B = bn−1 bn−2 · · · b1 b0 (baik positif maupun negatif) maka 2’s complementnya K = kn−1 kn−2 · · · k1 k0 dapat diperoleh dengan I
I I
Melihat semua bit B dari kanan ke kiri (mulai b0 , b1 , dst) dan mengkomplemenkan semua bit setelah nilai ’1’ yang pertama dijumpai Jika B=+76 (01001100) maka K=-76 (10110100) Jika B=-81 (10101111) maka K=+81 (01010001)
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Bilangan Integer Bertanda (Signed Integer) 4-bit b3 b2 b1 b0
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 dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Representasi Bilangan dan Operasi Aritmatika
Jangkauan Bilangan Signed
@2012,Eko Didik Widianto (
[email protected])
#Bit
Nama
4
nible, semioctet
8
byte, octet
16
half-word, word, short
32
word, long, doubleword, int
64
doubleword, int64
n
Integer n-bit (bentuk umum)
Jangkauan 3
3
signed: − unsigned: signed: − unsigned: signed: − unsigned: signed: −
2 s/d 2 − 1 0 s/d 24 − 1 27 s/d 27 − 1 0 s/d 28 − 1 215 s/d 215 − 1 0 s/d 216 − 1 231 s/d 231 − 1
unsigned: signed: − unsigned: signed: −
0 s/d 232 − 1 263 s/d 263 − 1 0 s/d 264 − 1 2n−1 s/d 2n−1 − 1
unsigned: 0 s/d 2n − 1
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Operasi Bilangan Unsigned
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected])
I I
Operasi penjumlahan 2 bilangan 1-bit memberikan 4 kombinasi yang mungkin Diimplementasikan dengan HA (Half-Adder)
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Rangkaian Full-Adder (FA)
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Rangkaian Full-Adder (Dekomposisi)
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Rangkaian Full-Adder (Dekomposisi Lain)
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan
I
Persamaan: I I
I
ci+1 = xi yi + xi ci + yi ci = xi yi + (xi + yi ) ci si = xi ⊕ yi ⊕ ci
Anggap gi = xi yi dan pi = xi + yi , maka ci+1 = gi + pi ci I
Rangkaian?
Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Operasi Penjumlahan
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Operasi penjumlahan 2 bilangan dengan n-bit (n>1) I I
Tiap pasang bit ditambahkan Untuk tiap posisi bit i, operasi penjumlahannya mungkin melibatkan sebuah carry-in dari bit posisi (i-1)
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Ripple Carry Adder (RCA) I I
I
Operasi penjumlahan dimulai dari pasangan digit paling kanan (LSB) sampai ke paling kiri (MSB) Jika sebuah carry dihasilkan dalam suatu posisi bit i, maka carry tersebut ditambahkan ke operasi penjumlahan di digit dengan posisi i+1 Operasi ini dapat diwujudkan dengan sebuah rantai full-adder (FA) yang dihubungkan seri I I I
Konfigurasi ini disebut sebagai penjumlah ripple-carry Sinyal carry ’ripple’ dari FA satu ke FA berikutnya RCA ini mempunyai kelemahan, yaitu adanya delay untuk meripple carry I
Akan diperbaiki dengan struktur CLA
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Operasi Bilangan Signed
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Sign-magnitude I
I
I
1’s complement I
I
I
Misalnya: operasi 5-2=? ekivalen dengan 5+(-2)=3. Bagaimana implementasinya, apakah 0101+1010? Perlu rangkaian logika untuk membandingkan dan mengurangkan bilangan
Misalnya: (-5)+(-2)=(-7). Ekivalen dengan 1010+1101=(1)0111. Carry 1 harus ditambahkan ke 0111 agar menghasilkan 1000 (=-7) Perlu koreksi untuk mendapatkan hasil yang benar
2’s complement I
penjumlahan selalu benar
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Operasi 2’s Complement
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Penjumlahan
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Operasi 2’s Complement
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Pengurangan
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Unit Penjumlah dan Pengurang
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Operasi pengurangan dapat direalisasikan sebagai operasi penjumlahan dengan menggunakan 2’s complement di pengurangnya (baik positif maupun negatif) I
Ini memungkinkan menggunakan rangkaian adder untuk melakukan penjumlahan dan pengurangan sekaligus
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
I I
Note: (2’s complement) = (1’s complement) + 1 1’s complement dapat diimplementasikan dengan menggunakan XOR I I
x ⊕ 1 = x dan x ⊕ 0 = x Jika operasi pengurangan dilakukan, 1’s complementkan bilangan kedua dengan meng-XOR-kan semua bit dengan 1
Unit Penjumlah dan Pengurang
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Menggunakan 2’s complement di bilangan pengurang
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Overflow Aritmatika
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected])
I
I
Jika n-bit digunakan untuk merepresentasikan bilangan signed, maka hasil penjumlahan atau pengurangan harus dalam jangkauan −2n−1 sampai +2n−1 − 1 Jika hasil operasi tidak dalam jangkauan ini, maka telah terjadi overflow aritmatika I
I
Untuk memastikan rangkaian aritmatika beroperasi dengan benar, perlu pendeteksi kejadian overflow
Untuk operasi 4-bit, jika c3 dan c4 mempunyai nilai yang sama, maka tidak terjadi overflow
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Overflow Aritmatika
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional Bilangan Signed (Bertanda)
I
Overflow dapat dideteksi dengan: I
I
Untuk bilangan n-bit I
I
overflow = c3 ⊕ c4 overflow = cn−1 ⊕ cn
Bagaimana rangkaian unit penjumlah/pengurang dengan overflow detection?
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Rangkaian Komparator Bilangan
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto (
[email protected]) Representasi Posisional
I
Misalnya: Bandingkan dua bilangan X = x3 x2 x1 x0 dan Y = y3 y2 y1 y0 I I
Bisa diimplementasikan dengan rangkaian pengurang (X-Y) Terdapat 3 output: Z, N, V I I I
I
Z=1 jika (X-Y)=0, hasil lainnya Z=0 N=1 jika (X-Y)<0, hasil lainnya N=0 V=1 jika terjadi overflow aritmatika, kalau tidak ada overflow V=0
Tunjukkan bagaimana Z, N, V digunakan untuk menentukan X=Y, X
Y dan X≥Y
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Representasi Bilangan dan Operasi Aritmatika
Solusi
@2012,Eko Didik Widianto ([email protected])
I
Misalnya X < Y, kemungkinan yang akan terjadi I
I
I
I
Jika X dan Y mempunyai tanda yang sama, tidak akan terjadi overflow, sehingga V=0. Dan untuk semua nilai X dan Y (positif/negatif) menghasilkan nilai negatif N=1 Saat X negatif dan Y positif, maka (X-Y) akan negatif (N=1) jika tidak ada overflow (V=0) dan (X-Y) akan positif (N=0) jika terdapat overflow (V=1) Sehingga jika X
Hasil I I
I
X=Y terdeteksi saat Z=1 XY terdeteksi jika Z + (N ⊕ V ) = 1. X≥Y terdeteksi jika (N ⊕ V ) = 1
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Rangkaian Komparator 4-bit
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Representasi Bilangan dan Operasi Aritmatika
Bilangan Fixed-Point
@2012,Eko Didik Widianto ([email protected])
I Bilangan fixed-point terdiri atas bagian integer (digit signifikan) dan
pecahan I I
memungkinkan bilangan pecahan (mis: 75,625) Digunakan di mesin yang tidak mempunyai FPU (floating-point unit)
I Notasi bilangan (n+k) bit: Bn, k = bn−1 bn−2 · · · b1 b0 , b−1 b−2 · · · b−k I
n: #bit integer (tanpa bit tanda), k: #bit pecahan. Misal: B3,4 adalah bilangan dengan 3 bit integer dan 4 bit pecahan yang disimpan dalam satu integer 2’s complement 8-bit
I Nilai bilangan: V(Bn, k) =
n−1 P
bi × 2i
i=−k
I Contoh: I I
B3, 4 = (0101, 1010)2 = 22 + 1 + 2−1 + 2−3 = 5, 62510 = 5, A16 B3, 4 = (1011, 1010)2 = − 22 + 1 + 2−1 + 2−3 = −5, 62510 = B, A16
I Rangkaian logika untuk fixed-point sama dengan bilangan integer
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Konversi Bilangan Fixed-Point
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Konversi Bilangan Fixed-Point
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Bilangan Floating-Point
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional
I
Bilangan fixed-point mempunyai range yang dibatasi oleh digit signifikan yang digunakan untuk merepresentasikan bilangan
I
Dalam beberapa aplikasi, diperlukan bilangan yang mungkin sangat besar atau sangat kecil
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya
I I
I I
Memerlukan representasi floating-point Bilangan direpresentasikan dengan mantissa yang berisi bit signifikan dan eksponen dari radix R Format: mantisa × R eksponen Bilangan tersebut seringkali dinormalisasi terhadap radixnya. Misalnya untuk radix 10: 1, 5 × 1044 atau 1, 25 × 10−36
Lisensi
Representasi Bilangan dan Operasi Aritmatika
Format IEEE Presisi Tunggal
@2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya
I IEEE mendefinisikan format 32-bit (single precision) untuk nilai
floating-point (IEEE 754-1985) I I I
1-bit sign (S) 8-bit eksponen (E) 23-bit mantissa (M)
I Dalam programming dikenal dengan tipe data float (C, C++, Java) dan
single (Pascal, VB, MATLAB) I Nilai bilangan: V(B) = (−1)S
1+
23 P
! b−i ×
2−i
i=1
I Baca: http://en.wikipedia.org/wiki/Single_precision
× 2E−127
Lisensi
Representasi Bilangan dan Operasi Aritmatika
Bilangan Float 32-bit
@2012,Eko Didik Widianto ([email protected])
I Representasi bilangan float I I
B = (3E200000)16 B=(+)(1.01)2 × 2124−127 = +(0.00101)2 = 0.15625
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya
I Nilai eksponen:
Lisensi I
Emin = 1, Emax = 254, menghasilkan eksponen (bias=127): E = 1 − 127 = −126 dan E = 254 − 127 = 127
Eksponen Signifikan=0 signifikan6=0 (E) 0 255
subnormal
(−1)S × 0.bit signifikan × 2−126
Nilai ternormalisasi
(−1)S × 1.bit signifikan × 2E−127
0, -0
1-254 ∞
Persamaan
bukan bilangan (NAN=not-anumber)
Contoh Bilangan Float 32-bit
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda)
I
Nyatakan nilai bilangan dari:
Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
I
Nyatakan bilangan (3.5)10 dalam bentuk IEEE single precision
BCD (Binary-Coded Decimal)
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected])
I I
Binary-coded-decimal mengkodekan bilangan desimal dalam bentuk biner Karena terdapat 10 nilai yang harus diwakili, diperlukan 4 bit per digit I I
I
Dari 0=0000 sampai 9=1001 Contoh: (01111000)BCD = (78)10
BCD digunakan di sistem komputer terdahulu dan kalkulator, keypad numerik I
I
Menyediakan format yang memadai saat informasi numerik perlu ditampilkan di display sederhana berorientasi digit Tapi, membutuhkan rangkaian yang kompleks untuk melakukan operasi aritmatika dan masalah efisiensi kode (6 buah kode tidak digunakan)
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Operasi dengan BCD
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional
I
Operasi penjumlahan Z = X + Y I I
Jika Z ≤ 9, maka S=Z dan Carry=0 Jika Z > 9, maka S=Z+6 dan Carry=1
Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Rangkaian Penjumlah BCD 1 Digit
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Implementasi Rangkaian Penjumlah BCD 1 Digit
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Kode ASCII
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected])
I
Kode yang sering digunakan untuk merepresentasikan informasi di komputer I I
I
Kode ASCII menggunakan pola 7-bit untuk merepresentasikan 128 simbol I I I I
I
American Standard Code for Information Interchange bilangan, huruf, tanda baca dan kontrol kode
digit bilangan (0-9) karakter (a-z dan A-Z) tanda baca kode kontrol
Kode ASCII ekstended 8-bit mempunyai tambahan simbol untuk 128 karakter grafik (local glyph) I
http://en.wikipedia.org/wiki/Extended_ASCII
Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
Kode ASCII
Representasi Bilangan dan Operasi Aritmatika @2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi
I Lihat: http://en.wikipedia.org/wiki/ASCII I Sumber:
http://en.wikipedia.org/wiki/File:ASCII_Code_Chart-Quick_ref_card.png
Representasi Bilangan dan Operasi Aritmatika
Lisensi Creative Common Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) I
Anda bebas: I
I
I
untuk Membagikan — untuk menyalin, mendistribusikan, dan menyebarkan karya, dan untuk Remix — untuk mengadaptasikan karya
Di bawah persyaratan berikut: I
Atribusi — Anda harus memberikan atribusi karya sesuai dengan cara-cara yang diminta oleh pembuat karya tersebut atau pihak yang mengeluarkan lisensi I
Cantumkan sumber asal file ini, yaitu
http://didik.blog.undip.ac.id/2012/02/24/ kuliah-sistem-digital-tsk-205-2011/ I
I
Pembagian Serupa — Jika Anda mengubah, menambah, atau membuat karya lain menggunakan karya ini, Anda hanya boleh menyebarkan karya tersebut hanya dengan lisensi yang sama, serupa, atau kompatibel.
Lihat: Creative Commons Attribution-ShareAlike 3.0 Unported License
@2012,Eko Didik Widianto ([email protected]) Representasi Posisional Bilangan Signed (Bertanda) Operasi Penjumlahan dan Pengurangan Bilangan Fixed-Point dan Floating-Point Representasi Lainnya Lisensi