Efek Blog

Rabu, 05 November 2014

Arithmetic Logical Unit

1.      ALU ( Arithmetic Logic Unit )




Disini saya memiliki beberapa penjelasan tentang ALU atau Arithmetic Logic Unit, penjelasannya sebagai berikut :
1.      ALU adalah singkatan dari Arithmetic And Logic Unit ( dalam bahasa indonesia : unit aritmatika dan logika ). ALU merupakan salah satu bagian dalam dari sebuah mikroprosesor yang berfungsi untuk melakukan operasi hitungan aritmatika dan logika. Contoh operasi aritmatika adalah operasi penjumlahan dan pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika atau matematika yang terjadi sesuai dengan instruksi program. ALU melakukan operasi arithmatika dengan dasar pertambahan, sedang operasi arithmatika yang lainnya, seperti pengurangan, perkalian, dan pembagian dilakukan dengan dasar penjumlahan. sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi arithmatika ini disebut adder. Tugas lain dari ALU adalah melakukan keputusan dari operasi logika sesuai dengan instruksi program. Operasi logika (logical operation) meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika, yaitu:
a. sama dengan (=)
b. tidak sama dengan (≠)
c. kurang dari (<)
d. kurang atau sama dengan dari (<=)
e. lebih besar dari (>)
f. lebih besar atau sama dengan dari (>=)
2.      Arithmetic Logic Unix merupakan bagian pengolah bilangan dari sebuah komputer. Di dalam operasi aritmetika ini sendiri terdiri dari berbagai macam operasi diantaranya adalah operasi penjumlahan, pengurangan, perkalian, dan pembagian. Mendesain ALU juga memiliki cara yang hampir sama dengan mendesain enkoder, dekoder, multiplexer, dan demultiplexer ALU terdiri dari register-register untuk menyimpan informasi.Operasi arithmatic dan logic terbagi dalam 4 kelas, yaitu decimal arthmatic, fixed point arithmatic, floating point arithmatic, dan logic operation.

Arithmetic Logical Unit merupakan unit penalaran secara logic. ALU ini adalah merupakan Sirkuit CPU berkecepatan tinggi yang bertugas menghitung dan membandingkan. Angka-angka dikirim dari memori ke ALU untuk dikalkulasi dan kemudian dikirim kembali ke memori. Jika CPU diasumsikan sebagai otaknya komputer, maka ada suatu alat lain di dalam CPU tersebut yang kenal dengan nama Arithmetic Logical Unit (ALU), ALU inilah yang berfikir untuk menjalankan perintah yang diberikan kepada CPU tersebut.

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. Instruksi yang dapat dilaksanakan oleh ALU disebut dengan instruction set. 

Fungsi Arithmetic Logic Unix
1.      Melakukan suatu proses data yang berbentuk angka dan logika, seperti data matematika dan statistika
2.      Melakukan keputusan dari operasi sesuai dengan instruksi program yaitu operasi logika (logical operation).
3.      Melakukan perhitungan aritmatika (matematika) yang terjadi sesuai dengan instruksi program
4.      Membantu Control Unit saat melakukan perhitungan aritmatika (ADD, SUB) dan logika (AND, OR, XOR, SHL, SHR)

3.      Arithmatic Logical Unit (ALU), adalah komponen dalam sistem komputer yang berfungsi melakukan operasi perhitungan aritmatika dan logika ( Contoh operasi aritmatika adalah operasi penjumlahan dan pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. ALU bekerja besama-sama memori, di mana hasil dari perhitungan di dalam ALU di simpan ke dalam memori.
                        Perhitungan dalam ALU menggunakan kode biner, yang merepresentasikan instruksi yang akan dieksekusi (opcode) dan data yang diolah (operand). ALU biasanya menggunakan sistem bilangan biner two’s complement. ALU mendapat data dari register. Kemudian data tersebut diproses dan hasilnya akan disimpan dalam register tersendiri yaitu ALU output register, sebelum disimpan dalam memori. Processor terdiri dari  4 elemen yang melakukan sistem operasi terhadap data, 4 elemen itu adalah instruksi, petunjuk instruksi, beberapa register dan ALU (Arithmetic Logic Unit). Adalah sebuah petunjuk instruksi akan memberi tahu processor dimana instruksi dari sebuah aplikasi diletakkan di memori.


2.   Integer Representation
            Semua bilangan dapat direprensentasikan dengan hanya menggunakan bilangan 0 dan 1. Untuk keperluan penyimpanan dan pengolahan komputer, kita tidak perlu menggunakan tanda minus dan titik, hanya bilangan biner yang dapat merepresentasikan bilangan.
·         Representasi Nilai Tanda
ü  Penggunaan unsigned integer tidak cukup untuk merepresentasikan bilangan integer negatif dan juga bilangan positif integer, karena itu terdapat beberapa konvensi lainnya meliputi perlakuan terhadap bit yang paling berarti (paling kiri) di dalam word sebagai bit tanda.
ü  Apabila bit paling kiri sama dengan nol maka suatu bilangan adalah positif. Sedangkan bit paling kiri sama dengan 1, maka bilangan bernilai negatif
Misalnya :
+18 = 00010010
      -18 = 10010010 (sign magnitude/nilai-tanda)


·         Kekurangan Representasi Nilai Tanda
Penambahan dan pengurangan memerlukan pertimbangan baik tanda bilangan maupun nilai relatifnya agar dapat berjalan pada operasi yang diperlukan
Terdapat dua representasi bilangan 0 :
+010 = 00000000
-010 = 10000000 (sign-magnitude)
Hal ini tidak sesuai untuk digunakan, karena akan menyulitkan pemeriksaan bilangan 0.
Dalam penjelasan lain integer representation dijelaskan sebagai berikut :
Representasi Integer
Untuk keperluan pengolahan dan penyimpanan komputer tidak perlu menggunakan tanda minus dan titik. Hanya bilangan biner (0 dan 1) yang dapat mempresentasikan bilangan. Jika hanya terbatas pada integer nonnegatif, maka representasinya akan lebih mudah.
·         Representasi magnituda tanda (sign-magnitude)
Terdapat beberapa konvensi alternatif yang digunakan untuk mempresentasikan bilangan integer negatif seperti halnya bilangan integer positif, semua konvensi tersebut meliputi perlakuan bit yang paling signifikan (paling kiri) di dalam word sebagai bit tanda.
Jika bit tanda adalah 0 maka bilangan tersebut adalah positif, jika bit tanda adalah 1, maka bilangan tersebut adalah negatif. Bentuk representasi yang paling sederhana yang memakai bit tanda adalah representasi magnituda tanda.
Terdapat beberapa kelemahan pada representasi magnituda tanda. Salah satunya adalah bahwa penambahan dan pengurangan memerlukan pertimbangan baik tanda bilangan maupun nilai relatifnya untuk menyelesaikan operasi yang diperlukan. Kelemahan yang lainnya adalah bahwa terdapat dua representasi bilangan 0.
Karena kelemahan ini representasi magnituda tanda jarang digunakan di dalam inplementasi bagian bilangan integer ALU.
·         Representasi komplemen 2
Menggunakan bit yang paling signifikan sebagai bit tanda yang memudahkannya untuk mengetahui apakan suatu integer bernilai positif atau negatif. Representasi ini berbeda dengan penggunaan representasi magnituda tanda dalam cara dengan bit-bit lainnya diinterpretasikan. Berdasarkan pada [DATT93] yang menyatakan bahwa representasi komplemen dua adalah terbaik untuk dipahami oleh pendefinisiannya dalam kaitannya dengan penjumlahan bit-bit berbobot. Keuntungannya adalah bahwa representasi itu tidak meninggalkan keraguan apa pun di mana aturan operasi aritmatika di dalam dua notasi komplemen tidak dapat bekerja untuk beberapa kasus khusus.
·         Konversi antara panjang bit yang berlainan
Pada notasi magnituida tanda, hal ini mudah terpenuhi; Sedehananya cukup memindahkan bit tanda keposisi paling kiri yang baru dan mengisi sisanya dengan nol.
·         Reresentasi titik tetap
            Representasi yang telah dibahas dalam bagian ini kadang-kadang dikenal sebagai titik tetap. Hal ini karena titik radiksnya (titik biner) tetap dan diasumsikan akan berada disebelah kanan dari digit yang paling kanan.

3.   Integer Arithmetic
1.      Bilangan bulat terdiri dari
– bilangan asli : 1, 2, 3, …
– bilangan nol : 0
– bilangan negatif : …, -3, -2, -1
Bilangan Bulat dinotasikan dengan : B = {…, -3, -2, -1, 0, 1, 2, 3, …}
Bilangan lain yang berada dalam bilangan bulat, di antaranya adalah bilangan:
a. Cacah : C = {0, 1, 2, 3, 4, …}
b. Ganjil : J = {1, 3, 5, 7, …}
c. Genap : G = {2, 4, 6, 8, …}
d. Cacah Kuadrat : K = {0, 1, 4, 9, …}
e. Prima : {2, 3, 5, 7, 11, …}

2.      Membandingkan Bilangan Bulat
Dengan memperhatikan tempat pada garis bilangan, dapat kita nyatakan (dalam contoh) bahwa :
a. 7 > 4, karena 7 terletak di sebelah kanan 4,
b. (-5) < 2, karena (-5) terletak di sebelah kiri 2, dan lain sebagainya.

3.      Penjumlahan dan Sifatnya
Salah satu Rumus penting :



Contoh : 7 + (-10) = 7 – 10 = -3
Sifat-sifatnya :
      a. Komutatif :



b. Asosiatif :



c. Tertutup :


d. Memiliki identitas :



       e. Invers penjumlahan :

4.      Pengurangan
Pengurangan merupakan lawan (invers) dari penjumlahan.
      Rumus :



      Contoh : 8 – (-2) = 8 + 2 = 10

5.      Perkalian dan Sifatnya
contoh :
3 x (-2) = (-2) + (-2) + (-2)










Sifat-sifat :



















6.      Pembagian
Pembagian adalah kebalikan (invers) dari perkalian.
Rumus :




7.      Perpangkatan dan Sifat













8.      Akar Pangkat Dua dan Akar Pangkat Tiga



















4.   Floating Point Representation.

Disini saya memiliki beberapa penjelasan tentang Floating Point Representation, penjelasannya sebagai berikut :
1.      Floating-point atau bilangan titik mengambang, adalah sebuah format bilangan yang dapat digunakan untuk merepresentasikan sebuah nilai yang sangat besar atau sangat kecil. Bilangan ini direpresentasikan menjadi dua bagian, yakni bagian mantisa dan bagian eksponen (E). Bagian mantisa menentukan digit dalam angka tersebut, sementara eksponen menentukan nilai berapa besar pangkat pada bagian mantisa tersebut (pada posisi titik desimal). Sebagai contoh, bilangan 314600000 dan bilangan 0.0000451 dapat direpresentasikan dalam bentuk bilangan floating point: 3146E5 dan 451E-7 (artinya 3146 * 10 pangkat 5, dan 451 * 10 pangkat -7).
Kebanyakan CPU atau mikroprosesor sederhana tidak mendukung secara langsung operasi terhadap bilangan floating-point ini, karena aslinya mikroprosesor ini hanya memilikiunit aritmatika dan logika, serta unit kontrol yang beroperasi berdasarkan pada bilangan bulat (integer) saja.
Perhitungan atau kalkulasi terhadap nilai floating point pada jenis mikroprosesor sederhana dapat dilakukan dengan menggunakan perangkat lunak, sehingga operasinya sangat lambat. Untuk itulah, sebuah prosesor tambahan dibutuhkan untuk melakukan operasi terhadap jenis bilangan ini, yang disebut dengan unit titik mengembang.
Dalam bahasa pemrograman, khususnya keluarga bahasa pemrograman C, bilangan titik mengambang direpresentasikan dengan tipe data float.

2.      REPRESENTASI FLOATING-POINT
·         Menyatakan suatu bilangan yang sangat besar/sangat kecil dengan menggeser titik desimal secara dinamis ke tempat yang sesuai dan menggunakan eksponen 10 untuk menjaga titik desimal itu.
·         Sehingga range bilangan yang sangat besar dan sangat kecil untuk direpresentasikan hanya dengan beberapa digit saja.
·         Dinyatakan dengan notasi ? a = (m,e) , dimana :
a= m x re r = radiks
m = mantissa
e = eksponen
·         Contoh : Tunjukkan bilangan-bilangan berikut ini dalam notasi floating point.
a. (45.382)10? 0.45382 x 102 = (0.45382,2)
b. (-21,35)8 ? -2135,0 x 8-2 = (-2135.0,-2)


5.   Floating Point Arithmetic

Floating Point Arithmetic adalah Sistem penempatan titik desimal dengan cara membagi word menjadi dua bagian. Satu bagian berisi angka pecahan, sebagian lainnya merupakan eksponen dari sepuluh. Posisi efektif dari titik desimal akan berubah ketika eksponennya diubah. Sistem ini digunakan untuk menyatakan hasil perhitungan yang sangat besar atau sangat kecil.

Dalam penjelasan lain dijelaskan sebagai berikut :

Bilangan yang mempunyai nilai pecahan (misalnya 3.2575) dapat direpresentasikan dengan dua format bilangan: fixed-point dan floating-point.
Bilangan pecahan fixed-point mempunyai jangkauan yang dibatasi oleh jumlah digit signifikan yang digunakan untuk merepresentasikan bilangan tersebut. Misalnya bilangan pecahan desimal sepuluh digit. Bilangan tersebut dinyatakan dengan fixed-point, yaitu satu digit untuk tanda, empat digit untuk angka utuh dan lima digit untuk angka pecahan. Jangkauan bilangan tersebut adalah 0 sampai 9999 untuk angka utuh dan 0.00001 sampai 0.99999 untuk angka pecahan, sehingga nilai bilangan yang mungkin adalah -9999.99999 sampai +9999.99999 dengan presisi 0.00001. Contoh bilangan tersebut yang valid adalah -9.00102 dan 100.99998. Bilangan ±10000 tidak bisa dinyatakan dengan sistem bilangan sepuluh digit ini. Sedangkan bilangan 0.000005 tidak memenuhi derajat presisi yang diinginkan, walaupun berada dalam jangkauan bilangan. Bilangan tersebut akan dibulatkan ke 0.00000 atau 0.00001, yang berarti ada selisih sebesar ±0.000005 dari nilai yang diinginkan.
Dalam aplikasi saintifik, mungkin akan terdapat bilangan yang sangat besar atau sangat kecil. Bilangan tersebut harus dapat direpresentasikan dengan tepat (presisi), yaitu menggunakan floating-point. Bilangan floating-point direpresentasikan dengan mantissa yang berisi digit signifikan dan eksponen dari radix R
Format: mantisa × Reksponen



Represensasi bilangan floating-point seringkali dinormalisasi terhadap radixnya, misalnya 1, 5 × 1044atau 1, 253 × 10 − 36
Format bilangan floating-point biner telah distandarkan oleh IEEE 754-2008 (atau ISO/IEC/IEEE 60559:2011), yaitu meliputi format 16-bit (half), 32-bit (single-precision), 64-bit (double-precision), 80-bit (double-extended) dan 128-bit (quad-precision).

Kesimpulan

1.      ALU ( Arithmetic Logic Unit ) adalah komponen dari CPU yang sangat penting. ALU berfungsi untuk melakukan operasi perhitungan aritmatika dan logika. Perhitungan dalam ALU menggunakan kode biner, yang merepresentasikan instruksi yang akan dieksekusi dan data yang diolah. Contoh operasi aritmatika adalah penjumlahan dan pengurangan, sedangkan untuk operasi logika adalah AND dan OR. Dalam Operasi ALU terdapat 4 kelas, yaitu decimal arithmetic, fixed point arithmetic, floating point arithmetic dan logic operation.

2.      Integer Representation adalah semua bilangan atau angka yang hanya dapat diterjemahkan dengan bilang 0 dan 1 atau hanya dapat diterjemahkan oleh bilangan biner.

3.      Integer arithmetic adalah operasi aritmatika yang menggunakan bilangan bulat seperti penjumlahan, pengurangan, perkalian, dan pembagian sesuai intruksi program yang diterjemahkan dalam bilangan biner.

4.      Integer Representation adalah suatu bentuk bilangan bulat yang digunakan untuk menterjemahkan sebuah nilai yang sangat besar atau sangat kecil. integer representation diterjemahkan menjadi 2 bagian, yaitu bagina mantisa ( posisi titik desimal ) dan bagian eksponen. Bagian mantisa berfungsi untuk menentukan digit dalam angka tersebut. Sementara eksponen berfungsi untuk menentukan nilai berapa besar pangkat pada bagian mantisa tersebut.

5.      Floating Point Arithmetic adalah Sistem penempatan titik desimal dengan cara membagi beberapa bilangan menjadi dua bagian. Satu bagian berisi angka pecahan, sebagian lainnya merupakan eksponen.


Referensi

1.      http://id.wikipedia.org/wiki/Unit_aritmatika_dan_logika
2.      http://kopongkopong.blogspot.com/2011/09/arithmetic-logic-unit-alu.html
3.      http://reddevil2893.wordpress.com/2013/12/05/pengertian-alu-arithmetic-logical-unit-dan-sitem-bus/
4.      http://iandoank.blogspot.com/2007/12/aritmatika-komputer.html
5.      http://spektrumpena.wordpress.com/2012/09/10/aritmatika-komputer/comment-page-1/ m
6.      http://teknikrandi.wordpress.com/2013/10/21/2/
7.      http://id.wikipedia.org/wiki/Floating-point

8.      http://didik.blog.undip.ac.id/2012/06/01/bilangan-floating-point/

Tidak ada komentar:

Posting Komentar