UNIVERSITAS GADJAH MADA Fakultas MIPA Jurusan ILMU

advertisement
UNIVERSITAS GADJAH MADA
FAKULTAS MIPA
JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA
ILMU KOMPUTER
RKPM
Rencana Kegiatan Pembelajaran Mingguan
Modul Pembelajaran Minggu ke 1
ARITMETIKA DALAM KOMPUTER
DAN ERROR
oleh
1. Drs. G.P. Dalijo, Dipl. Comp.
2. Agus Sihabuddin, S.Si., M.Kom.
Didanai dengan dana BOPTN P3-UGM
Tahun Anggaran 2012
Desember 2012
BAB I
ARITMETIKA DALAM KOMPUTER
DAN
ERROR
MINGGU KE 1
1.1.
Representasi integer dalam komputer
Dalam matematika, bilangan bulat (integer) direpresentasikan dengan:
-
representasi desimal :
aa
n
n 1
... a1 a0  an10  an 110
n
n 1
 ...  a110  a010
1
0
koef (digit) adalah salah satu dari 0, 1, 2, 3, … , 9
-
representasi biner :
n 1
a 2 a 2
n
n
n 1
 ...  a1 2  a0 2
1
0
Koefisien adalah binary digit 0 atau 1
Representasi biner di atas diimplementasikan untuk representasi bilangan bulat
positif di komputer. Integer disimpan dalam 1 word dengan panjang tetap di memori.
Bit pertama menunjukkan tanda. Integer negatif direpresentasikan dengan 2’s
complement.
Contoh soal: Berapakah bilangan bulat terbesar yang bisa direpresentasikan oleh n
bit? Berapa yang terkecil?
1.2.
Representasi floating point dalam komputer
Floating point (bilangan real) memiliki representasi khusus dalam komputer.
Representasi tersebut dapat dijelaskan seperti berikut:

Untuk bil berbasis β, x dapat ditulis sebagai :
x  f 
E
E : bilangan bulat non-negatif, eksponen
F : bilangan real, mantissa

Bentuk normalisasi floating point adalah seperti di atas dengan syarat :
1

 f 1
Contoh soal:
Tulislah bilangan e dalam bentuk floating point tenormalisasi untuk :
a. basis 10
b. basis 2
Jawab :
a. e ≈ 2.7182818 = (0.27182818)10 x 10 1
b. e ≈ 1 x 21 + 0 x 20 + 1 x 2-1 + 0 x 2-2 + 1 x 2-3 + …
≈ (10.10110111)2
≈ (0.1010110111)2 x 22
Dalam perancangan komputer/kalkulator harus diperhatikan pemilihan/
penentuan basis. Penentuan basis akan mempengaruhi representasi bilangan floating
point.
1.3.
Digit Signifikan
Untuk XA, jumlah dari digit awal yang benar relatif terhadap digit yang
bersesuaian dalam XT disebut sebagai jumlah digit signifikan dalam XA
Contoh :
XA = 24.329 mempunyai 4 digit akurasi relatif terhadap XT = 24.328
Contoh soal: Bagaimana dengan XA = 0.02138 terhadap XT = 0.02144 ?
1.4.
Definisi Eror
Beberapa definisi tentang eror adalah sebagai berikut:
= nilai sebenarnya – nilai pendekatan → Error(XA) =
a. Error
XT  X A
(XT: nilai sebenarnya, XA: nilai pendekatan)
b. Relative Error =
error
nilai sebenarnya
→ Rel (X)
=
X
T

X
XT
c. Absolut error = X T  X A
A
 1 (X
A
X
T
)
Contoh soal: Tentukan absolute dan relative error dari pendekatan  dengan ̂ =
3.1416 (  = 3.14159765)
1.5.
Sumber Eror
Berikut ini beberapa sumber eror:
1.
Error dari alat/mesin → komputer, kalkulator
Macamnya:
a.
Rounding error
-
Berhubungan dengan penyimpanan bilangan pada komputer dengan
tempat terbatas.
-
Bisa direduksi dengan algoritma yang efisien
Perhitungan :
Jika   2  M , dengan M adalah jumlah bit mantissa pada representasi
floating point di komputer, maka :
x  xˆ   x
Jadi,  merupakan upperbound untuk error relative representasi floating
point
b.
Truncation error
- karena penerapan suatu algoritma dan approximasi
Contoh :
Penggunaan finite number untuk mengestimasi jumlah infinite series.
1
2.
1 1
  ...
2 3
→ deret divergen.
kesalahan/blunder
Contoh : kesalahan dalam pemrograman
3.
error dari pengamatan → propagation of error
Contoh : data-data dari pengamatan fisika memuat error
4.
error dari pendekatan matematika.
1
2
Contoh : perhitungan integral : I   ex dx
0
2
Karena tidak ada antiderivatif untuk
e x , digunakan pendekatan
dengan menggunakan Taylor approximation
2
2
ex  1  x 
5.
2
6
8
2!
3!
4!
x x x
error dari model matematika
Contoh : model paling sederhana untuk pertumbuhan penduduk adalah
N (t )  N 0 e kt tidak sesuai untuk nilai t besar.
Error ini di luar area metode numerik.
1.6.
Propagasi Eror
Jika δ(.) adalah absolute error pada nilai yang dihitung maka:
 ( f ( x))   ( x) f ' ( x)
Contoh soal :
1. Estimasi absolute error untuk fungsi f ( x) 
x
1
3
untuk xˆ  64.00
Jawab :
Diasumsikan bahwa x eksak sampai 2 desimal di belakang koma sehingga
absolute error x dibatasi oleh 5.10-3
f ' ( x) 
 (x
ˆ
-
1
3
x
)
2
3
/3
 ( xˆ )
3x
ˆ
2

3
5.10 3
4
 10
48
untuk penjumlahan dan pengurangan :
 ( x  y )   ( xˆ )   ( yˆ )
-
untuk perkalian :
 ( xˆyˆ )  yˆ  ( xˆ)  xˆ  ( yˆ )
-
untuk pembagian :
 xˆ 
 yˆ 
   
 ( xˆ )  xˆ yˆ  ( yˆ )
1
xˆ
 ( xˆ )  2  ( yˆ ) 
yˆ
yˆ
yˆ
2. Estimasi error dalam menghitung f ( x, y, z )  x 2  y z untuk x ≈ x̂ = 1.23, y ≈ ŷ =
2.34, z ≈ ẑ = 3.45 di mana tiap komponen diasumsikan dibulatkan 2 desimal di
belakang koma.
Jawab :
Asumsi : δ( x̂ ), δ( ŷ ), δ( ẑ ) ≤ 0.005
 (x
ˆ )  2 xˆ ( xˆ)  2.46  0.005  0.0123
2
 yˆ 
 zˆ 
 ( yˆ )  yˆ zˆ  ( zˆ)


yˆ 
zˆ 
  
zˆ
x
ˆ    0.0147
2
 0.00243
Download