370 likes | 1.19k Views
BILANGAN TITIK-KAMBANG (FLOATING-POINT). Angka Signifikan (AS). 0,000123 mengandung 3 AS (nol bkn merupakan AS) 0,00123 mengandung 3 AS (nol bkn merupakan AS) 1,23 x 10 4 mengandung 3 AS (memakai notasi ilmiah) 1,230 x 10 4 mengandung 4 AS (memakai notasi ilmiah)
E N D
Angka Signifikan (AS) 0,000123 mengandung 3 AS (nol bkn merupakan AS) 0,00123 mengandung 3 AS (nol bkn merupakan AS) 1,23 x 104 mengandung 3 AS (memakai notasi ilmiah) 1,230 x 104 mengandung 4 AS (memakai notasi ilmiah) 1,2300 x 104 mengandung 5 AS (memakai notasi ilmiah)
Representasi Bil. Real/Riil dalam Komputer • Bilangan Titik-tetap (fixed-point) • Setiap bilangan riirl disajikan dengan sejumlah desimal tetap. • Contoh: 62.358 0.013 1.000 • Bilangan Titik-kambang (floating-point) • Setiap bilangan riil disajikan dengan jumlah angka signifikan yang sudah tetap • Contoh: 0.6238X103 0.1714X103
Komputer hanya menyimpan sejumlah tertentu angka signifikan • Bilangan riil yang jumlah angka signifikan-nya melebihi jumlah angka signifikan komputer akan disimpan dalam sejumlah angka signifikan komputer tersebut • Pengabaian angka signifikan sisanya, menimbulkan error pembulatan
Bilangan Titik-kambang (Floating Point) • Bilangan riil dalam komputer umumnya disajikan dalam format floating-point • Penulisan floating-point: a = m X BP = 0.d1d2d3d4d5…dn X BP Keterangan: m = mantisa (riil), d1d2d3d4d5…dn adalah digit mantisa B = basis sistem bilangan yang dipakai (2,8,10, dsb) P = pangkat (berupa bil. bulat), dari –Pmin sampai +Pmaks • Contoh: 245.7549 0.2457549X103
Bilangan Titik-kambang (Floating Point) Ternormalisasi • Syarat bilangan titik-kambang (Floating-point) ternomalisasi: digit mantisa yang pertama tidak boleh 0 a = m X BP = 0.d1d2d3d4d5…dn X BP 1 ≤ d1 ≤ B-1 dan 0 ≤ dk ≤ B-1 untuk k 1 • Pada sistem bil. desimal 1 ≤ d1 ≤ 9 dan 0 ≤ dk ≤ 9 • Pada sistem bil. biner d1 = 1 dan 0 ≤ dk ≤ 1 • Contoh: 0.0563X10-3 0.563X10-4 0.00023270X106 0.23270X103
PembulatanPadaBilanganTitik-kambang (Floating-point) • Bil. riil dalam komputer memiliki rentang terbatas • Floating-point yang tidak cocok salah satu dari nilai-nilai dalam rentang nilai yang tersedia akan dibulatkan ke salah satu nilai dalam rentang • Error yang muncul akibat penghampiran di atas disebut galat pembulatan • Teknik pembulatan yang umumnya dipakai komputer, yaitu: • Pemenggalan (Chooping) • Pembulatan ke digit terdekat (In-rounding)
PembulatanPadaBilanganTitik-kambang (Floating-point) • Pemenggalan (Chopping) • Misal diketahui: a = 0.d1d2d3…dndn+1…X10P flchop(a) = 0.d1d2d3…dndn+1…X10P • Contoh pemenggalannya: = 0.31459265358…X101 flchop () = 0.314592X101 (6 digit mantis) Error = 0.00000065…x101
PembulatanPadaBilanganTitik-kambang (Floating-point) • Pembulatan ke digit terdekat (In-rounding) • Misal diketahui: a = 0.d1d2d3…dndn+1…X10P , jika < 5 , jika > 5 , jika = 5 dan n genap , jika = 5 dan n ganjil
PembulatanPadaBilanganTitik-kambang (Floating-point) • Pembulatan ke digit terdekat (In-rounding) Contoh 1: = 0.31459265358…X101 dalam komputer 6 digit, pembulatan menjadi flround() = 0.314593X101 dengan error = 0.00000034642…X101 Pembulatan ke digit terdekat menghasilkan error yang lebih kecil dari pada pemenggalan
PembulatanPadaBilanganTitik-kambang (Floating-point) • Pembulatan ke digit terdekat (In-rounding) Contoh 2: a = 0.568278571528X10-4 • dalam komputer 7 digit, pembulatan menjadi flround(a) = 0.5682786X10-4 • dalam komputer 8 digit, pembulatan menjadi flround(a) = 0.56827857X10-4
Aritmatika Bil. Titik-kambang (Floating-point) • Permasalahan 1: Penjumlahan& pengurangan bilangan yang sangat kecil ke/dari bilangan yang lebih besar menyebabkan error • Contoh: Digunakan komputer dengan mantis/riil 4 digit (basis 10), maka hitunglah: 1.557 + 0.04381 disamakan bentuknya 0.1557X101 + 0.4381X10-1
Aritmatika Bil. Titik-kambang (Floating-point) • Penyelesaian Permasalahan 1: • Samakan pangkat basisnya 0.1557X101 = 0.1557 X101 0.4381X10-1=0.004381X101 + = 0.160081X101 Chopping 0.1600X101 In-rounding 0.1601X101 Error Pemenggalan= |(0.160081X101 ) – (0.1600X101 )| = 0.000081 Error Pembulatan = |(0.160081X101 ) – (0.1601X101 )| = 0.000019
Aritmatika Bil. Titik-kambang (Floating-point) • Permasalahan 2: 0.56780X105 – 0.56430X105 (5 AS) • Penyelesaian Permasalahan 1: 0.56780X105 0.56430X105 - 0.00350X105 normalisasi: 0.350X103 (3 AS) Chopping 0.350X103 In-rounding 0.350X103 hasil akhir hanya memiliki 3 AS (kehilangan 2 AS)
Aritmatika Bil. Titik-kambang (Floating-point) • Cara komputasi yang lebih baik dengan menghilangkan tanda pengurangan. • Cara: • Mengalikan bilangan/variabel yang mengandung tanda pengurangan dengan 1 • Dimana 1 diperoleh dari kebalikan bilangan/variabel yang mengandung pengurangan • Variabel yang mengandung pengurangan adalah • maka harus dikalikan dengan 1 yang diperoleh dari
Aritmatika Bil. Titik-kambang (Floating-point) • Perkalian • tidak perlu menyamakan pangkat • memisahkan operasi pada mantis dan pangkat • mantis dilakukan operasi perkalian biasa • dilakukan operasi penambahan pada pangkat • Pembagian • tidak perlu menyamakan pangkat • memisahkan operasi pada mantis dan pangkat • mantis dilakukan operasi pembagian biasa • dilakukan operasi pengurangan pada pangkat
Aritmatika Bil. Titik-kambang (Floating-point) • Perkalian • Hitung perkalian 0,4652X104 dengan 0,1456X10-1 (4 angka signifikan) • Penyelesaian: Kalikan matriks: 0,4652 Jumlahkan pangkat: 4 0,1456 x -1 + 0,06773312 3 Hasil: 0,06773312X103 Normalisasi: 0,6773312X102 Chooping 0,6773X102 In-rounding 0,6773X102
Aritmatika Bil. Titik-kambang (Floating-point) • Pembagian • Hitung pembagian 0,8675X10-4 dengan 0,2543X10-2 (4 angka signifikan) • Penyelesaian: Kalikan matriks: 0,8675 Jumlahkan pangkat: -4 0,2543 : -2 - 3,4113252 -2 Hasil: 3,4113252X10-2 Normalisasi: 0,34113252X10--1 Chooping: 0,3411X10-1 In-rounding: 0,3411X10-1
Aritmatika Bil. Titik-kambang (Floating-point) • Contoh: menghitung akar-akar polinom x2 – 40x + 2 = 0 sampai (4 angka signifikan) • Penyelesaian: rumusan y = ax2 – bx + c gunakan rumus: x1 = 20 + 19.95 39.95 (4 AS) x2 = 20 - 19.95 0.05 (1 AS) kurang akurat (kehilangan 3 AS) untuk menentukan x2 yg akurat, maka gunakan rumusan x1 x2 = c/a 39.95 x2 = 2/1 x2 = 2/39.95 x2 = 0.0500625…. Chopping x2 = 0.05006 (4 AS) In-rounding x2 = 0.05006 (4AS)
Kondisi buruk (ill conditioned) • Contoh mencari solusi sistem persamaan non-linear :
Latihan • Diberikan beberapa bil. titik-kambang (floating-point) sbb: a = 0.4523123X10-4 b = 0.2365401X101 c = 0.4520156X10-4 Bila mesin operasi aritmatika memiliki 7 angka signifikan, hitunglah komputasi yg diberikan mesin tsb (dalam bentuk ternomalisasi): • a – c • a + b + c • a * c • a / b • Carilah akar persamaan kuadrat x2 – 10.1x + 1 = 0, dengan rumus abc yg setiap kali perhitungan antara maupun hasil akhir dibulatkan dengan teknik: • Chopping • In-rounding • Lakukan perhitungan langsung pada . Kemudian lakukan perhitungan yang lebih baik!