Professional Documents
Culture Documents
5.FloatingPointArithmetic
5.1.BentukBilanganFloatingPoint
Bilangan Floating Point memiliki bentuk umum : + m*be , dimana m
(disebutjugadenganmantissa),mewakilibilanganpecahandanumumnyadikonversi
kebilanganbinernya,emewakilibilanganexponentnya,sedangkan bmewakili radix
(basis)dariexponent.
Gambar5.1.
Contoh:
Padagambardiatas,menunjukkantentangpanjangbitpadabilanganfloatingpointm
=23bit,e=8bit,danS(bitsign)=1.JikanilaiyangtersimpandiSadalah0,maka
bilangantersebutadalahpositifdanjikanilai yangtersimpanpadaSadalah1,maka
bilangantersebutadalahnegatif.
Bilanganexponentpadacontohdiatas,hanyadapatdigunakanpadabilanganpositif0
hingga 255. Untuk dapat menggunakan bilangan exponent negatif dan positif, nilai
bulat yang disebut denganbias, dikurangkan dengan bilangan pada kolom exponent
dan menghasilkan bilangan exponent akhir. Misalkan pada contoh diatas
menggunakanbias=128, maka bilanganexponentakhirnya memilikirangeantara
128 (disimpan sebagai 0 pada kolom exponent) hingga +127 (disimpan sebagai 255
pada kolom exponent). Berdasarkan bentuk seperti ini, bilangan exponent +4 dapat
digunakan dengan menyimpan 132 pada kolom exponent, sedangkan bilangan
exponent12dapatdigunakandenganmenyimpan116padakolomexponent.
Anggap b = 2, maka bilangan floating point seperti 1,75 dapat menggunakan salah
satudaribentukumumsepertipadagambarberikut:
1
D3TKJ(TeknikKomputerdanJaringan)
DepartemenPendidikanNasional
Modul5
Gambar5.2.
5.2. Macammacambentukbilanganfloatingpoint
Untukmempermudahoperasibilanganfloatingpointdanmenambahtingkat
presisinya, maka bilangan tersebut dibuat dalam bentuk ternormalisasi (normalized
forms). Suatu bilangan floating point telah ternormalisasi jika most significant bit
(MSB) dari mantissanya adalah 1. Karena itu, diantara ketiga bentuk diatas dari
bilangan1,75,makabentukyangtelahternormalisasiadalahbentukyangpalingatas,
dandisarankanuntukdigunakan.
Karena nilai MSB dari bilangan Floating Point yang telah ternormalisasi
selalu1,maka bit initidakdisimpan,sehingganilai mantissa yangtersimpanadalah
1.m.Sehinggauntukbilanganfloatingpointbukan nol yangternormalisasi memiliki
bentuk(1)S * (1.m)*2e128
5.3. AritmetikaFloatingPointPenjumlahan/Pengurangan
Halyangsulitdaripenjumlahanduabilanganexponentadalahjikabilangan
bilangantersebutmemilikibentukexponensialyangberbeda.Unutkmemecahkannya,
maka sebelum ditambahkan bilangan exponensialnya harus disetarakan terlebih
dahulu, atau bilangan dengan nilaiexponent lebih kecil disamakan dulu ke bilangan
exponentyangsamadenganbilanganlain.
Langkahlangkah yang dilakukan untuk menambah/mengurangkan dua
bilangan floatingpoint
1. Bandingkan kedua bilangan, dan ubah ke bentuk yang sesuai pada bilangan
dengannilaiexponensiallebihkecil
2. Lakukanoperasipenjumlahan/pengurangan
2
D3TKJ(TeknikKomputerdanJaringan)
DepartemenPendidikanNasional
Modul5
Operasipenjumlahan/penguranganduabilanganfloatingpointdiilustrasikan
denganskemasepertipadagambarberikut:
Gambar5.3.Skemapenjumlahan/penguranganbilangan floatingpoint
5.4. Perkalian
Algoritmaumumuntukperkaliandaribilanganfloatingpointterdiridaritigalangkah
:
1. Hitung hasil exponensial dengan menjumlahkan nilai exponent dari kedua
bilangan
2. Kalikankeduabilangan mantissa
3. Normalisasihasilakhir
3
D3TKJ(TeknikKomputerdanJaringan)
DepartemenPendidikanNasional
Modul5
Contoh:PerkalianantaraduabilanganfloatingpointX=1,000*22 danY=1,010*
21
1. Tambahkanbilanganexponennya:2+(1)= 3
2. Kalikan mantissa:1,0000* 1,010= 1,010000
Hasilperkaliannyaadalah 1,0100*23
Perkaliandaridua bilanganfloatingpointdiilustrasikan menggunakanskema seperti
tampakpadagambarberikut:
Gambar5.4.Skemaperkalianbilangan floatingpoint
5.5. Pembagian
Pembagiandariduabilangan floatingpointdiilustrasikanmenggunakanskemaseperti
tampakpadagambarberikut:
Gambar5.5.Skemapembagianbilangan floatingpoint
5.6. FloatingPointstandardIEEE
IEEE membuat dua bentuk bilangan floating point standard. Bentuk basic
dan bentukextended.Padatiap bentuktersebut,IEEEmenentukandua format,yaitu
singleprecision dan double precision format. Single precision format adalah model
32bit sedangkan double precision format adalah 64bit. Pada single extended format
setidaknya menggunakan44 bit,sedangkanpada doubleextendedformatsetidaknya
menggunakan80bit.
Pada single precision format, mengijinkan penggunaan bit tersembunyi,
kolom exponentnya adalah 8bit. Bentuk single precision ditunjukkan pada gambar
berikut.
Gambar5.6.
IEEEsingleprecisionFormat
Jika jumlah bit bilangan exponent adalah 8, maka nilainya memiliki 256
kombinasi, diantara angkaangka tersebut, dua kombinasi digunakan sebagai nilai
khusus:
1.e=0bernilai nol(jikam=0)dannilaiterdenormalisasi(jikam0)
5
D3TKJ(TeknikKomputerdanJaringan)
DepartemenPendidikanNasional
Modul5
2.e=255bernilai +(jikam=0)dannilaitakterdefinisi(jikam0)
m=0 m 0
e=0 0 Terdenormalisasi
e=255 + TidakTerdefinisi
Tabel5.1.
IEEEDoublePrecisionFormat
Bentukinimemilikikolomexponent11bitdankolomnilai mantissasebesar
52bit.Bentuknyasepertitampakpadagambar.
Gambar5.7.IEEEdoubleprecisionformat
6
D3TKJ(TeknikKomputerdanJaringan)
DepartemenPendidikanNasional