Upload
trinhnga
View
230
Download
2
Embed Size (px)
Citation preview
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 1 / 53
Representasi Bilangan dan Operasi Aritmatika
Eko Didik Widianto ([email protected])
Sistem Komputer - Universitas Diponegoro
Review Kuliah
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 2 / 53
• Sebelumnya telah dibahas tentang sintesis rangkaian logika dan teknologiimplementasi menggunakan CMOS. Dalam rangkaian logika,diimplementasikan variabel-variabel (masukan dan keluaran) yang menyatakansuatu keadaan switch atau kondisi
• Selanjutnya akan dibahas penggunaan variabel ini untuk merepresentasikanbilangan. Representasi bilangan meliputi unsigned dan signed, fixed-point danfloating-point. Kemudian dibahas tentang operasi aritmetika baik penjumlahanmaupun pengurangan
◦ Representasi bilangan di sistem digital/komputer
◦ Rangkaian untuk melakukan operasi aritmatika penjumlahan danpengurangan
Bahasan
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 3 / 53
Representasi PosisionalBilangan DesimalBilangan BinerBilangan DesimalKonversi Bilangan
Bilangan SignedBilangan SignedSign-Magnitude1’s Complement2’s Complement
Operasi AritmetikaOperasi Bilangan UnsignedRipple Carry Adder (RCA)Operasi Bilangan SignedUnit Penjumlah dan PengurangOverflow Aritmatika
Fixed- dan Floating-PointBilangan Fixed-PointBilangan Floating-Point
Representasi LainnyaBCDKode ASCII
Representasi Posisional
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 4 / 53
Bilangan Integer dan Desimal
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 5 / 53
• Dua tipe bilangan
1. Tak bertanda (unsigned ): bilangan yang hanya memuat nilai positif
2. Bertanda (signed ): bilangan yang memuat nilai positif dan negatif
• Sistem desimal, unsigned integer
◦ bilangan memuat digit yang mempunyai nilai 0-9
◦ Bilangan desimal n-digit dapat dinyatakan sebagai
D = dn−1dn−2 · · ·d1d0
◦ 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 digitnyamempunayi 10 nilai yang mungkin dan tiap digit berbobot pangkat 10
Bilangan Biner
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 6 / 53
• Dalam sistem digital, digunakan bilangan biner atau base-2
◦ Tiap digit (bit, binary digit) mempunyai nilai 0 atau 1
◦ Sebuah variabel mewakili satu bit
• Representasi posisional bilangan biner n-digit: B = bn−1bn−2 · · ·b1b0
• Bilangan B tersebut mewakili nilai integer V(B)
V (B) = bn−1×2n−1+bn−2×2n−2+· · ·+b1×21+b0×20 =n−1∑
i=0
bi × 2i
◦ Misalnya: (1101)2= 1× 23 +1× 22 +0× 21 +1× 20 = (13)
10
• Bilangan n-bit mewakili bilangan integer positif dari 0 . . .2n− 1
Bilangan Oktal dan Hexadesimal
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 7 / 53
• Representasi posisional dapat digunakan untuk sebarang radix
◦ Untuk radix r, maka untuk bilangan
K = kn−1kn−2 · · ·k1k0mempunyai nilai integern−1∑
i=0
ki × ri
• Bilangan dengan radix 8 disebut oktal
◦ Digit bernilai dari 0 . . . 7
• Bilangan dengan radix 16 disebut hexadesimal (hex)
◦ Digit bernilai dari 0 . . . 9 dan A . . . F
Bilangan di Beberapa Representasi
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 8 / 53
Desimal Biner Oktal Hexa Desimal Biner Oktal Hexa0 0000 0 0 8 1000 10 81 0001 1 1 9 1001 11 92 0010 2 2 10 1010 12 A3 0011 3 3 11 1011 13 B4 0100 4 4 12 1100 14 C5 0101 5 5 13 1101 15 D6 0110 6 6 14 1110 16 E7 0111 7 7 15 1111 17 F
Konversi Bilangan
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 9 / 53
• Konversi bilangan biner ke desimal atau sebaliknya
◦ Biner ke desimal
V (B) = bn−1 × 2n−1 + bn−2 × 2n−2 + · · ·+ b1 × 21 + b0 × 20
=
n−1∑
i=0
bi × 2i
Misalnya:
(11101011)2 = 27 + 26 + 25 + 23 + 21 + 20
= (235)10 = 235
◦ Desimal ke biner
• 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. Ulangipembagian quotient sampai quotient=0
• Untuk setiap pembagian, sisa akan merepresentasikan satu bit bilanganbinernya
Contoh Desimal ke Biner
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 10 / 53
Konversi Biner-Oktal-Hexadesimal
Representasi Posisional
• Bilangan Desimal
• Bilangan Biner
• Bilangan Desimal
• Konversi Bilangan
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 11 / 53
• Biner - Oktal
◦ 1 digit oktal merupakan grup 3 digit biner
◦ Konversi biner - oktal:Biner 001 000 110 100
Oktal 1 0 6 4
◦ Konversi oktal - biner:Oktal 2 3 6 7
Biner 010 011 110 111
• Biner - Hexadesimal
◦ 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 (Bertanda)
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 12 / 53
Bilangan Signed
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 13 / 53
• Dalam sistem biner, representasi bilangan signed berisi: tanda (sign)dan besar nilai (magnitude)
◦ Tanda diyatakan oleh bit paling kiri (0: bilangan positif, 1:bilangan negatif)
• Bilangan n-bit: 1 bit paling kiri menyatakan tanda, n-1 bit berikutnyamenunjukan besar nilai bilangan
Bilangan Sign-Magnitude
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 14 / 53
• Di bilangan signed, terdapat 3 format yang umum digunakan untukrepresentasi bilangan negatif
1. Sign-Magnitude
2. 1’s Complement
3. 2’s Complement
• Bilangan sign-magnitude menggunakan 1 bit paling kiri untuk menyatakantanda (0: positif, 1: negatif) dan bit sisanya menyatakan magnitude (besarnilai bilangan). Bilangan 4-bit:
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 sistemkomputer (dibahas di Operasi Bilangan)
Bilangan 1’s Complement
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 15 / 53
• Skema 1’s Complement:
Bilangan n-bit negatif K dapat diperoleh dari mengurangkan 2n − 1 denganbilangan positif ekivalennya P
K = (2n− 1)−P
• Misalnya untuk bilangan 4-bit (n=4):
K = (24 − 1)− P = 15− P = (1111)2 − P
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 mengkomplemenkantiap bit bilangan, termasuk bit tanda
• Masih ada kekurangan dari penggunaan 1’s complement (dibahas diOperasi Bilangan)
Bilangan 2’s Complement
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 16 / 53
• 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
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
• Terlihat bahwa 2’s complement dapat dibentuk denganmengkomplemenkan tiap bit bilangan dan menambahkan 1
◦ (2’s complement) = (1’s complement) + 1
• Bilangan signed 2’s complement ini yang sering digunakan dalamsistem komputer
Aturan Mencari 2’s Complement
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 17 / 53
• Jika diberikan satu bilangan signed B = bn−1bn−2 · · ·b1b0 (baikpositif maupun negatif) maka 2’s complementnyaK = kn−1kn−2 · · ·k1k0 dapat diperoleh dengan
◦ Melihat semua bit B dari kanan ke kiri (mulai b0, b1, dst) danmengkomplemenkan semua bit setelah nilai ’1’ yang pertamadijumpai
◦ Jika B=+76 (01001100) maka K=-76 (10110100)
◦ Jika B=-81 (10101111) maka K=+81 (01010001)
Bilangan Integer Bertanda (Signed Integer) 4-bit
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 18 / 53
b3b2b1b0 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
Jangkauan Bilangan Signed
Representasi Posisional
Bilangan Signed
• Bilangan Signed
• Sign-Magnitude
• 1’s Complement
• 2’s Complement
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 19 / 53
#Bit Nama Jangkauan
4 nible, semioctet signed: −(
23)
s/d 23 − 1
unsigned: 0 s/d 24 − 1
8 byte, octet signed: −(
27)
s/d 27 − 1
unsigned: 0 s/d 28 − 1
16 half-word, word, short signed: −(
215)
s/d 215 − 1
unsigned: 0 s/d 216 − 1
32 word, long, doubleword, int signed: −(
231)
s/d 231 − 1
unsigned: 0 s/d 232 − 1
64 doubleword, int64 signed: −(
263)
s/d 263 − 1
unsigned: 0 s/d 264 − 1
n Integer n-bit (bentuk umum) signed: −(
2n−1)
s/d 2n−1− 1
unsigned: 0 s/d 2n − 1
Operasi Penjumlahan danPengurangan
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 20 / 53
Operasi Bilangan Unsigned
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 21 / 53
• Operasi penjumlahan 2 bilangan 1-bit memberikan 4 kombinasi yangmungkin
• Diimplementasikan dengan HA (Half-Adder )
Rangkaian Full-Adder (FA)
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 22 / 53
Rangkaian Full-Adder (Dekomposisi)
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 23 / 53
Rangkaian Full-Adder (Dekomposisi Lain)
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 24 / 53
• Persamaan:
◦ ci+1 = xiyi + xici + yici = xiyi + (xi + yi) ci
◦ si = xi ⊕ yi ⊕ ci
• Anggap gi = xiyi dan pi = xi + yi, maka ci+1 = gi + pici
◦ Rangkaian?
Operasi Penjumlahan
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 25 / 53
• Operasi penjumlahan 2 bilangan dengan n-bit (n>1)
◦ Tiap pasang bit ditambahkan
◦ Untuk tiap posisi bit i, operasi penjumlahannya mungkinmelibatkan sebuah carry-in dari bit posisi (i-1)
Ripple Carry Adder (RCA)
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 26 / 53
• 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 tersebutditambahkan ke operasi penjumlahan di digit dengan posisi i+1
• Operasi ini dapat diwujudkan dengan sebuah rantai full-adder (FA) yangdihubungkan seri
◦ Konfigurasi ini disebut sebagai penjumlah ripple-carry
◦ Sinyal carry ’ripple’ dari FA satu ke FA berikutnya
Kekurangan Ripple Carry Adder
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 27 / 53
• Tiap FA mempunyai delay tertentu sebelum keluaran si dan ci+1 valid
◦ disebut delay propagasi FA dari input ke output
• Misalnya, delay propagasi ∆t
◦ Carry dari FA pertama, c1, akan sampai di FA kedua dalam waktu ∆t setelahinput x0 dan y0
◦ Carry dari FA kedua, c2, akan sampai di FA ketiga dalam waktu ∆t setelahinput x1, y1 dan c1 atau total 2∆t
◦ Dan seterusnya. Sinyal cn−1 valid setelah (n− 1)∆t, dan jumlah totalakan tersedia setelah delay (n)∆t
• Delay total tersebut semakin besar seiring semakin banyak jumlah bit bilangan yangharus ditambahkan
◦ Penjumlahan bilangan n-bit akan membutuhkan waktu (n)∆t dari bit-bitmasukan tersedia sampai keluaran valid
• Delay terbesar dalam rangkaian disebut critical-path delay
◦ Jalur yang menyebabkan delay ini disebut critical path
Critical Path RCA
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 28 / 53
Operasi Bilangan Signed
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 29 / 53
• Sign-magnitude
◦ Misalnya: operasi 5-2=? ekivalen dengan 5+(-2)=3. Bagaimanaimplementasinya, apakah 0101+1010?
◦ Perlu rangkaian logika untuk membandingkan dan mengurangkanbilangan
• 1’s complement
◦ Misalnya: (-5)+(-2)=(-7). Ekivalen dengan 1010+1101=(1)0111. Carry1 harus ditambahkan ke 0111 agar menghasilkan 1000 (=-7)
◦ Perlu koreksi untuk mendapatkan hasil yang benar
• 2’s complement
◦ penjumlahan selalu benar
Operasi 2’s Complement
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 30 / 53
• Penjumlahan
Operasi 2’s Complement
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 31 / 53
• Pengurangan
Unit Penjumlah dan Pengurang
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 32 / 53
• Operasi pengurangan dapat direalisasikan sebagai operasipenjumlahan dengan menggunakan 2’s complement dipengurangnya (baik positif maupun negatif)
◦ Ini memungkinkan menggunakan rangkaian adder untukmelakukan penjumlahan dan pengurangan sekaligus
• Note: (2’s complement) = (1’s complement) + 1
• 1’s complement dapat diimplementasikan dengan menggunakanXOR
◦ x⊕ 1 = x dan x⊕ 0 = x
◦ Jika operasi pengurangan dilakukan, 1’s complementkanbilangan kedua dengan meng-XOR-kan semua bit dengan 1
Unit Penjumlah dan Pengurang
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 33 / 53
• Menggunakan 2’s complement di bilangan pengurang
Overflow Aritmatika
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 34 / 53
• 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 terjadioverflow aritmatika
◦ Untuk memastikan rangkaian aritmatika beroperasi denganbenar, perlu pendeteksi kejadian overflow
• Untuk operasi 4-bit, jika c3 dan c4 mempunyai nilai yang sama,maka tidak terjadi overflow
Overflow Aritmatika
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 35 / 53
• Overflow dapat dideteksi dengan:
◦ overflow = c3⊕ c4
• Untuk bilangan n-bit
◦ overflow = cn−1 ⊕ cn
• Bagaimana rangkaian unit penjumlah/pengurang dengan overflowdetection?
Rangkaian Komparator Bilangan
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 36 / 53
• Misalnya: Bandingkan dua bilangan X = x3x2x1x0 danY = y3y2y1y0
◦ Bisa diimplementasikan dengan rangkaian pengurang (X-Y)
◦ Terdapat 3 output: Z, N, V
• 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 menentukanX=Y, X<Y, X≤Y, X>Y dan X≥Y
Solusi
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 37 / 53
• Misalnya X < Y, kemungkinan yang akan terjadi
◦ Jika X dan Y mempunyai tanda yang sama, tidak akan terjadioverflow, 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 tidakada overflow (V=0) dan (X-Y) akan positif (N=0) jika terdapat overflow(V=1)
◦ Sehingga jika X<Y maka N ⊕ V = 1
• Hasil
◦ X=Y terdeteksi saat Z=1
◦ X<Y terdeteksi jika N ⊕ V = 1. X≤Y terdeteksi jikaZ + (N ⊕ V ) = 1
◦ X>Y terdeteksi jika Z + (N ⊕ V ) = 1. X≥Y terdeteksi jika(N ⊕ V ) = 1
Rangkaian Komparator 4-bit
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
• Operasi BilanganUnsigned
• Ripple Carry Adder (RCA)
• Operasi Bilangan Signed
• Unit Penjumlah danPengurang
• Overflow Aritmatika
Fixed- dan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 38 / 53
Bilangan Fixed-Point danFloating-Point
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 39 / 53
Bilangan Fixed-Point
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 40 / 53
• Bilangan fixed-point terdiri atas bagian integer (digit signifikan) dan pecahan
◦ memungkinkan bilangan pecahan (mis: 75,625)
◦ Digunakan di mesin yang tidak mempunyai FPU (floating-point unit)
• Notasi bilangan (n+k) bit: Bn,k = bn−1bn−2 · · ·b1b0,b−1b−2 · · ·b−k
◦ n: #bit integer (tanpa bit tanda), k: #bit pecahan. Misal: B3,4 adalah bilangandengan 3 bit integer dan 4 bit pecahan yang disimpan dalam satu integer 2’scomplement 8-bit
• Nilai bilangan: V(Bn,k) =n−1∑
i=−k
bi × 2i
• Contoh:
◦ 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
• Rangkaian logika untuk fixed-point sama dengan bilangan integer
Konversi Bilangan Fixed-Point
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 41 / 53
Konversi Bilangan Fixed-Point
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 42 / 53
Bilangan Floating-Point
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 43 / 53
• Bilangan fixed-point mempunyai range yang dibatasi oleh digit signifikanyang digunakan untuk merepresentasikan bilangan
• Dalam beberapa aplikasi, diperlukan bilangan yang mungkin sangatbesar atau sangat kecil
◦ Memerlukan representasi floating-point
◦ Bilangan direpresentasikan dengan mantissa yang berisi bitsignifikan dan eksponen dari radix R
◦ Format: mantisa×Reksponen
◦ Bilangan tersebut seringkali dinormalisasi terhadap radixnya.Misalnya untuk radix 10: 1, 5× 1044atau 1, 25× 10−36
Format IEEE Presisi Tunggal
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 44 / 53
• IEEE mendefinisikan format 32-bit (single precision) untuk nilai floating-point (IEEE754-1985)
◦ 1-bit sign (S)
◦ 8-bit eksponen (E)
◦ 23-bit mantissa (M)
• Dalam programming dikenal dengan tipe data float (C, C++, Java) dan single(Pascal, VB, MATLAB)
• Nilai bilangan: V(B) = (−1)S(
1+23∑
i=1
b−i × 2
−i
)
× 2E−127
• Baca: http://en.wikipedia.org/wiki/Single_precision
Bilangan Float 32-bit
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 45 / 53
• Representasi bilangan float
◦ B = (3E200000)16
◦ B=(+)(1.01)2 × 2124−127 = +(0.00101)2 = 0.15625
• Nilai eksponen:
◦ Emin = 1, Emax = 254, menghasilkan eksponen (bias=127):E = 1− 127 = −126 dan E = 254− 127 = 127
Eksponen
(E)
Signifikan=0 signifikan 6=0 Persamaan
0 0, -0 subnormal (−1)S × 0.bit signifikan× 2−126
1-254 Nilai ternormalisasi (−1)S × 1.bit signifikan× 2E−127
255 ∞ bukan bilangan
(NAN=not-a-number)
Contoh Bilangan Float 32-bit
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
• Bilangan Fixed-Point
• Bilangan Floating-Point
Representasi Lainnya
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 46 / 53
• Nyatakan nilai bilangan dari:
• Nyatakan bilangan (3.5)10 dalam bentuk IEEE single precision
Representasi Lainnya
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 47 / 53
BCD
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 48 / 53
• Binary-coded-decimal mengkodekan bilangan desimal dalam bentuk biner
• Karena terdapat 10 nilai yang harus diwakili, diperlukan 4 bit per digit
◦ Dari 0=0000 sampai 9=1001
◦ Contoh: (01111000)BCD = (78)10
• BCD digunakan di sistem komputer terdahulu dan kalkulator, keypadnumerik
◦ Menyediakan format yang memadai saat informasi numerik perluditampilkan di display sederhana berorientasi digit
◦ Tapi, membutuhkan rangkaian yang kompleks untuk melakukanoperasi aritmatika dan masalah efisiensi kode (6 buah kode tidakdigunakan)
Operasi dengan BCD
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 49 / 53
• Operasi penjumlahan Z = X + Y
◦ Jika Z ≤ 9, maka S=Z dan Carry=0
◦ Jika Z > 9, maka S=Z+6 dan Carry=1
Rangkaian Penjumlah BCD 1 Digit
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 50 / 53
Implementasi Rangkaian Penjumlah BCD 1 Digit
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 51 / 53
Kode ASCII
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 52 / 53
• Kode yang sering digunakan untuk merepresentasikan informasi dikomputer
◦ American Standard Code for Information Interchange
◦ bilangan, huruf, tanda baca dan kontrol kode
• Kode ASCII menggunakan pola 7-bit untuk merepresentasikan 128simbol
◦ digit bilangan (0-9)
◦ karakter (a-z dan A-Z)
◦ tanda baca
◦ kode kontrol
• Kode ASCII ekstended 8-bit mempunyai tambahan simbol untuk 128karakter grafik (local glyph)
◦ http://en.wikipedia.org/wiki/Extended_ASCII
Kode ASCII
Representasi Posisional
Bilangan Signed
Operasi Aritmetika
Fixed- dan Floating-Point
Representasi Lainnya
• BCD
• Kode ASCII
@2011 eko didik widianto (http://didik.blog.undip.ac.id) TSK205 Sistem Digital - Siskom Undip – 53 / 53
• Lihat: http://en.wikipedia.org/wiki/ASCII
• Sumber: http://en.wikipedia.org/wiki/File:ASCII_Code_Chart-Quick_ref_card.png