aritmatika integer
Nama : Tri Wahyuningsih
Npm : 18311080
Kelas : SI GAB 1
1. Cara melakukan konversi bilangan
Sistem bilangan desimal (basis sepuluh) memiliki sepuluh kemungkinan nilai (0,1,2,3,4,5,6,7,8, atau 9) untuk setiap posisi angka. Sebaliknya, sistem bilangan biner (basis dua) hanya memiliki dua kemungkinan nilai yang diwakili dengan 0 dan 1 untuk setiap posisi angka.[1] Karena sistem bilangan biner adalah bahasa internal dari komputer elektronik, programer komputer yang serius tentu mengetahui cara melakukan konversi dari sistem bilangan desimal ke biner.
Pada dasarnya, yang dimaksud dengan konversi bilangan adalah proses mengubah bentuk bilangan yang satu ke bentuk bilangan lainnya yang masih memiliki nilai yang sama. Konversi bilangan desimal ke bilangan biner berarti mengubah bentuk bilangan desimal menjadi bentuk bilangan biner yang hasilnya tetap masih memiliki nilai yang sama.
Cara konversi bilangan desimal ke bilangan biner cukup mudah, yaitu dengan membagi bilangan desimal ke basis bilangan biner yaitu 2, hasilnya kemudian dibulatkan kebawah dan sisa hasil pembagiannya disimpan atau dicatat. Lakukan pembulatan kebawah tersebut hingga nilainya mencapai nol. Sisa pembagiannya tersebut kemudian diurutkan dari yang paling akhir hingga yang paling awal. Sisa pembagian yang diurutkan inilah merupakan hasil konversi bilangan desimal menjadi bilangan biner.
Contoh
Konversikan bilangan desimal nilai 50 menjadi bilangan biner :
50/2 = 25 sisa bagi adalah 0
25/2 = 12 sisa bagi adalah 1
12/2 = 6 sisa bagi adalah 0
6/2 = 3 sisa bagi adalah 0
3/2 = 1 sisa bagi adalah 1
1/2 = 0 sisa bagi adalah 1
Hasil pembagian tersebut kemudian diurutkan dari yang paling akhir hingga paling awal menjadi 1100102.
Jadi Hasil Konversi bilangan desimal 50 menjadi bilangan biner adalah 1100102.
2. Cara melakukan aritmatika integer ( + , - , x, : )
Pada representasi sign-magnitude aturan pembentukan bilangan negatif (negation) bilangan integer cukup sederhana yaitu : Ubahlah bit tanda.
Pada notasi komplemen dua, pengurangan sebuah bilangan integer dapat dibentuk dengan menggunakan :
1. Anggaplah komplemen Boolean seluruh bit bilangan integer (termasuk bit tanda).
2. Perlakukan hasilnya sebagai sebuah unsigned binary integer, tambahkan 1.
Misalnya:
+ 18 = 00010010 (komplemen dua)
Komplemen bit-bitnya = 11101101
----------------
- 1
11101110 = -18
Seperti perkiraan sebelumnya, negatif dari negatif bilangan itu adalah:
-18 = 11101110 (komplemen dua)
komplemen bit-bitnya = 00010001
------------------
+ 1
00010010 =18
• Interpretasikan sekumpulan n bit bilangan biner an – 1an-2...a1a0 sebagai bilangan interger komplemen dua A, sehingga nilainya sama dengan.
• Sekarang bentuk komplemen bit-bitnya, an 1 an-2 ...a0, dan perlakukan sebagai sebuah unsigned integer, tambahkan 1.
• Terakhir, interpretasikan rangkaian n bit bilangan integer hasilnya sebagai bilangan interger komplemen dua B, sehingga nilainya sama dengan.
• Sekarang kita menginginkan A = -B, yang artinya A + B = 0. hal ini akan dengan mudah ditunjukkan dengan:
a. Penurunan di atas mengasumsikan bahwa pertama-tama kita dapat memperlakukan komplemen bit A sebagai unsign integer untuk menambahkan 1, dan kemudian memperlakukan hasilnya sebagai integer komplemen dua.
b. Terdapat dua keadaan khusus yang perlu diperhatikan. Pertama, anggaplah A = 0. Dalam kasus ini, untuk representasi 8-bit,
0 = 00000000 (komplemen dua)
Komplemen bit-bit = 11111111
--------------
+ 1
1 00000000 = 0
c. Disini terjadi suatu overflow, yang kemudian diabaikan.
d. Hasilnya adalah bahwa pengurangan 0 sama dengan 0.
e. Keadaan khusus kedua lebih menyerupai masalah.
f. Bila kita mengambil pengurangan pola bit 1 yang diikuti oleh n-1 bilangan 0, maka kita akan kembali mendapatkan bilangan yang sama.
Misalnya untuk word 8-bit,
-128 = 00000000 (komplemen dua)
Komplemen bit-bit = 01111111
--------------
+ 1
10000000 = -128
• Sebagian anomali seperti itu tidak dapat diabaikan. Jumlah pola bit di dalam sebuah word n = -bit adalah 2n, yang merupakan bilangan genap. Kita ingin merepresentasikan integer positif dan negatif dan bilangan 0.
• Pada kasus komplemen dua, terdapat representasi n-bit untuk 2n, tapi tidak terdapat 2n.
• Penambahan dalam komplemen dua ditunjukkan pada Gambar dibawah ini menunjukkan 4 contoh pertama menjelaskan operasi yang berhasil.
(a) (-7) - (-5) (b) (-4) + (-4)
1001 1100
0101 0100
1101 = -2 0000
0000 = 0
(c) (+3) +(-4) (d) (-4) + (-1)
0011 1100
0100 1111
0111 = 7 1011
1011 = -5
(e) (+5) + (-4) (f) (-7) + (-6)
0101 1001
0100 1010
0111 = Overflow 0011 = Overflow
Pada proses arithmatika ALU hanya dapat melakukan proses penjumlahan dan pengurangan. Untuk melakukan proses perkalian dan pembagian integer dilakukan dengan dua buah proses.
1. Negasi
Negasi adalah teknik untuk mencari nilai negatif dengan cara membalikan nilai yang sudah ada ditambahkan nilai 1, contoh :
Nilai -10 dapat dicari dengan cara:
a. Dilakukan dengan pengurangan pergeseran jumlah satu bit kedepan : yaitu jika nilai desimal bernilai 10 maka didapatkan nilai binernya adalah 1010 yang banyak bilangan bitnya sebanyak 4 bit sehingga nilai kedepan yang dikurangi adalah
10000 sebanyak 5 bit :
10000
1010-
0110
b. Dengan cara inverting yaitu membalikan nilai bilangan yang tidak negatif. Caranya antara lain : 10 desimal memiliki nilai biner yaitu 1010, yang berjumlah 4 bit maka kita dapat mencari nilai -10 adalah:
1010, dibalik menjadi nilai 0101 ditambah dengan nilai 1 maka didapatkan nilai 0110.
2. Penjumlahan
Arithmatika penjumlahan biner yang dilakukan pada unit Arithmatika dan Logika (ALU) sebenarnya adalah menggunakan gerbang logika kombinaksional yang disebut adder.
Pengurangan
Arithmatika
pengurangan biner yang dilakukan pada unit Arithmatika dan Logika (ALU) sebenarnya
adalah menggunakan gerbang logika kombinaksional yang disebut Sutractor.
Perkalian
Arithmatika perkalian pada komputer sebenarnya tidak ada yang ada adalah melakukan penjumlahan sebanyak yang dikalikan dengan bantuan logika “AND” pada setiap yang dikalikan serta melakukan shift register pada masing-masing bit
pengali :
1011 Multiplicand (11)
1101 x Multiplier (13)
1011
0000
1011 Partial Product
1011 +
10001111 Product (143)
Pada proses perkalian pembilang dan penyebut dilakukan dengan proses logika “AND” setelah itu dibentuk bergeser dengan counter register dari awal tulisan seperti perkalian pada bilangan desimal yang dimengerti oleh pemahaman manusia.
5. Pembagian
1101
Divisor 1011 | 10010011 Deviden
1011
Partial Remainder 1110
1011
Partial Remainder 1111
1011
100 Remainder
Catatan: turun 2 bit jika tidak dapat dikurangi oleh pembaginya, maka jumlah bit hasilnya diberikan nol pada sisa pertamanya.
Komentar
Posting Komentar