Minggu, 06 Januari 2019

ARITHMETIC AND LOGIC UNIT (ALU)

Arithmatic and Logic Unit (ALU) adalah salah satu bagian/komponen dalam sistem didalam sistem komputer yang berfungsi melakukan operasi/perhitungan aritmatika dan logika (seperti penjumlahan, pengurangan dan beberapa logika lain)..

Struktur dan Fungsi ALU

ALU sendiri merupakan suatu kesatuan alat yang terdiri dari berbagai komponen perangkat elektronika termasuk di dalamnya sekelompok transistor, yang dikenal dengan nama logic gate, dimana logic gate ini berfungsi untuk melaksanakan perintah dasar matematika dan operasi logika. Kumpulan susunan dari logic gate inilah yang dapat melakukan perintah perhitungan matematika yang lebih komplit seperti perintah “add” untuk menambahkan bilangan, atau “devide” atau pembagian dari suatu bilangan. Selain perintah matematika yang lebih komplit, kumpulan dari logic gate ini juga mampu untuk melaksanakan perintah yang berhubungan dengan logika, seperti hasil perbandingan dua buah bilangan.

Operasi logika (logical operation) meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika, yaitu :
·sama dengan (=)
·tidak sama dengan (<>)
·kurang dari (<)
·kurang atau sama dengan dari (<=)
·lebih besar dari (>)
·lebih besar atau sama dengan dari (>=)

Cara Kerja Alu

Cara Kerja CPU
Fungsi ALU

Tugas dari ALU adalah melakukan keputusan dari operasi logika sesuai dengan instruksi program. ALU melakukan operasi aritmatika yang lainnya seperti  pengurangan, dan pembagian dilakukan dengan dasar penjumlahan. Sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi aritmatika ini disebut adder.

Rangkaian Utama Untuk Melakukan Perhitungan ALU

ADDER
Adder merupakan rangkain ALU (Arithmetic and Logic Unit) yang digunakan untuk menjumlahkan bilangan. Karena adder digunakan untuk memproses operasi aritmatika, maka adder juga sering disebut rangkaian kombinasional aritmatika. Ada 3 jenis Adder, yaitu:
- Rangkaian adder yang hanya menjumlahkan dua bit disebut Half Adder.
- Rangkaian adder yang hanya menjumlahkan tiga bit disebut Full Adder.
- Rangkaian adder yang menjumlahkan banyak bit disebut Paralel Adder.

HALF ADDER
Rangkain half adder merupakan dasar bilangan biner yang masing-masing hanya terdiri dari satu bit, oleh karena itu dinamakan penjumlah tak lengkap.
1.Jika A=0 dan B=0 dijumlahkan, hasilnya S (Sum) = 0.
2.Jika A=1 dan B=0 dijumlahkan, hasilnya S (Sum) = 1.
3.Jika A=1 dan B=1 dijumlahkan, hasilnya S (Sum) = 0. Dengan nilai pindahan Cy (Carry Out) = 1

Dengan demikian, half adder memiliki dua masukan (A dan B), dan dua keluaran (S dan Cy).

Dari tabel diatas, terlihat bahwa nilai logika dari Sum sama dengan nilai logika dari gerbang XOR, sedangkan nilai logika Cy sama dengan gerbang logika  AND. Dari tabel diatas, dapat dibuat rangkaian half adder.

FULL ADDER
Full adder adalah  rangkaian yang bekerja melakukan perhitungan penjumlahan sepenuhnya dari dua buah bilangan binary, yang masing-masing terdiri dari satu bit. Rangkaian ini memiliki tiga input dan dua buah output, salah satu input merupakan nilai dari pindahan penjumlahan, kemudian sama seperti pada half adder salah satu outputnya dipakai sebagai tempat nilai pindahan dan yang lain sebagai hasil dari penjumlahan.

PARALEL ADDER
Paralel Adder adalah rangkaian Full Adder yang disusun secara paralel dan berfungsi untuk menjumlahkan bilangan biner berapa pun bitnya, tergantung jumlah Full Adder yang diparalelkan. Gambar dibawah ini menunjukan Paralel Adder yang terdiri dari 4 buah Full Adder yang disusun paralel sehingga membentuk sebuah penjumlahan 4 bit.


---------------------------------------
----Bagian Presentasi Muhammad Sobirin - 14117254 - 2KA32----


Aritmatika Integer

Negasi

Untuk membuat negasi gunakan komplement  dua.

Untuk bilangan positif, komplemen dua adalah sama dengan sistem yang menunjukkan tanda dan besarnya bilangan, yaitu MSB yang digunakan sebagai penunjuk atau tanda bilangan, dan bit-bit sisanya menunjukkan besarnya.
Untuk bilangan negatif, komplemen dua dapat diperoleh dengan menghitung terlebih dahulu komplemen satu dari bilangan biner semula (yang bertanda positif), kemudian menambahkan 1 ke LSB-nya.

Contoh :
+7(10)  =    0111(2)
-7 (10)  =   1001(2)

Cara Untuk mencari komplement ke dua dari 7(2). Cari dulu komplement satu nya, yaitu :
7(10) = 0111(2)
komplement satu :           1000(2)
           1
                    --------- +
Komplement dua     :            1001(2)
 Jadi, -7(10) = 1001(2)


Aturan Untuk Mendeteksi Overflow
Aturan overflow
Bila dua buah bilangan di tambahkan, dan keduanya positif atau keduanya negatif maka over flow akan terjadi jika dan hanya jika hasilnya memiliki tanda yang berlawanan. 

Contoh : 
     0011 = 3
     0100 = 4
    ------------- +
     0111 = 7 (bukan overflow)

     0101 = 5
     0100 = 4
    ------------- +
     1001 = 9 (overflow)

Pembulatan
Teknik pembulatan yang sesuai dengan standard IEEE adalah sebagai berikut :
Pembulatan ke Bilangan Terdekat : Hasil dibulatkan ke bilangan terdekat yang dapat direpresentasi.
Pembulatan Ke Arah : Hasil dibulatkan ke atas ke arah tak terhingga positif.
Pembulatan Ke Arah : Hasil dibulatkan ke atas ke arah tak terhingga negatif.
Pembulatan Ke Arah 0 : Hasil dibulatkan ke arah 0

Konversi Bilangan
Bilangan

Bilangan biner (Bilangan berbasis dua, bilangannya: 0,1)
Bilangan octal (Bilangan berbasis delapan bilangannya: 0,1,2,3,4,5,6,7)
Bilangan desimal (Bilangan berbasis sepuluh, bilangannya: 0,1,2,3,4,5,6,7,8,9)
Bilangan hexadesimal (Bilangan berbasis enam belas, bilangannya: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)

Konversi bilangan biner, octal atau hexadesimal menjadi bilangan desimal.
Konversi bilangan desimal menjadi bilangan biner, octal atau hexadesimal.

Konversi bilangan octal ke biner dan sebaliknya.

Konversi bilangan hexadesimal ke biner dan sebaliknya.
Konversi bilangan hexadesimal ke octal dan sebaliknya

Floating-Point Representaion
Representasi Integer oleh Biner
Dalam sistem bilangan biner ada 4 macam sistem untuk merepresentasikan integer
       - representasi unsigned integer 
       - representasi nilai tanda (sign magnitude)
       - representasi bias
       - representasi komplemen dua (2’s complement)

Unsigned Integer
Untuk keperluan penyimpanan dan pengolahan komputer diperlukan bilangan biner yang terdiri atas 0 dan 1
1 byte (8 bit binary digit) dapat digunakan untuk menyatakan bilangan desimal dari 0 – 255

Kelemahan Unsigned Integer
   ·Hanya dapat menyatakan bilangan positif
   ·Sistem ini tidak bisa digunakan untuk menyatakan bilangan   
     integer negatif


Representasi Nilai Tanda (sign magnitude) 
   Karena kelemahan unsigned integer, Dikembangkan beberapa       konvensi untuk menyatakan bilangan integer negatif
Konvensi 
   Perlakuan bit yang paling kiri (MSB) di dalam byte sebagai tanda
   Bila MSB = 0 maka bilangan tersebut positif
   Jika MSB = 1 maka bilangan tersebut negatif

Kelemahan sign magnitude
   Adanya representasi ganda pada bilangan 0, yaitu
Representasi Nilai Tanda (sign magnitude) 
   Karena kelemahan unsigned integer, Dikembangkan beberapa       konvensi untuk menyatakan bilangan integer negatif
Konvensi 
   Perlakuan bit yang paling kiri (MSB) di dalam byte sebagai tanda
   Bila MSB = 0 maka bilangan tersebut positif
   Jika MSB = 1 maka bilangan tersebut negatif

Kelemahan sign magnitude
   Adanya representasi ganda pada bilangan 0, yaitu


Representasi BIAS
   Digunakan untuk menyatakan exponen (bilangan pemangkat) pada    representasi floating point.
   Dapat menyatakan bilangan bertanda, yaitu dengan mengurutkan    dari bilangan negatif terkecil   dapat  dijangkau sampai bilangan    positif paling besar yang bisa dijangkau.
   Mengatasi permasalahan pada sign magnitude yaitu +0 dan -0.


Representasi Komplemen 2
Merupakan perbaikan dari representasi nilai bertanda (sign magnitude) yang mempunyai kekurangan pada operasi penjumlahan dan pengurangan serta representasi nilai 0.
Bilangan Negatif Pada 2’s Complement
1.     Sistem bilangan dalam 2’s complement menggunakan bit paling kiri (MSB) sebagai bit tanda dan sisanya sebagai bit nilai seperti pada sign magnitude
2.    Bilangan negatif dalam 2’s complement dibentuk dari:
·        komplemen satu dari bilangan biner semula (nilai positif)
·        menambahkan 1 pada LSB


Floating-Point Aritmatika
Aritmatika floating point penjumlahan/pengurangan
Perkalian
Pembagi

Aritmatika floating point penjumlahan/pengurangan 
Langkah­ langkah yang dilakukan untuk menambah/mengurangkan dua bilangan floating point :

Bandingkan kedua bilangan, dan ubah ke bentuk yang sesuai pada bilangan dengan nilai exponensial lebih kecil
Lakukan operasi penjumlahan / pengurangan
Lakukan normalisasi dengan ’menggeser’ nilai mantissa dan mengatur nilai exponensialnya
contoh :
123 x 102   123             x 102
456 x 10-2 +             0,0456        x 102 
  123,0456   x 102


Perkalian
Algoritma umum untuk perkalian dari bilangan floating point terdiri dari tiga langkah:

Hitung hasil exponensial dengan menjumlahkan nilai exponent dari kedua bilangan
Kalikan kedua bilangan mantissa
Normalisasi hasil akhir

contoh :
123 x 102         123            x 102
456 x 10-2  x                0,0456       x 102 
Exp : 2 x 2 = 4
Mantissa : 123 x 0,0456 = 5,6088
Normalisasi : 5,6088 x 104


Pembagian
logoritma umum untuk pembagian dari bilangan floating point terdiri dari tiga langkah :

Hitung hasil exponensial dengan mengurangkan nilai exponent dari kedua bilangan
Bagi kedua bilangan mantissa
Normalisasi hasil akhir
contoh :
123 x 102          123 x 102
456 x 102   ÷                456 x 102 
Exp : 2 - 2 = 0
Mantissa : 123 ÷ 456 = 0,2697
Normalisasi : 2,697 x 10-1


Sumber :
https://prezi.com/si9g2qoihbdo/aritmatika-komputer/
http://isdesember.blogspot.com/2014/11/aritmatika-komputer.html?m=1
https://riskydwiyanti.wordpress.com/2013/10/20/integer-representation/
http://firmaninformatika.blogspot.com/2014/12/integer-arithmetic.html
http://blograkata.blogspot.com/2012/02/pengertian-adder.html
http://tuankaru.blogspot.com/2016/11/definisifungsi-dan-cara-kerja-alu.html
http://sangbadrun.blogspot.com/2015/07/pengertian-fungsi-dan-cara-kerja-cpu.html
http://hyperpost.blogspot.com/2014/04/konversi-bilangan-biner-octal-desimal.html
https://studylibid.com/doc/414497/representasi-floating-point








Tidak ada komentar:

Posting Komentar